原文:http://www.cnblogs.com/kunhu/p/3624000.html1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步:所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该....
分类:
系统相关 时间:
2015-07-10 12:50:28
阅读次数:
145
想详细彻底地了解poll或看懂下面的代码请参考《Linux网络编程——I/O复用之poll函数》
代码:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define OPEN_MAX 100
int main(int ...
分类:
系统相关 时间:
2015-06-17 21:44:55
阅读次数:
220
struct hostent
{
char *h_name; /* 主机的正式名称*/
char **h_aliases; /* 主机的别名列表*/
int h_addrtype; /* 主机的地址类型AF_INET */
int h_length; /* 主机的地址长度*/
char **h_addr_list; /* 主机的IP地址列表*/
}
#define h_addr h_addr_li...
分类:
系统相关 时间:
2015-06-16 09:21:44
阅读次数:
245
tcp多线程并发服务器
多线程服务器是对多进程服务器的改进,由于多进程服务器在创建进程时要消耗较大的系统资源,所以用线程来取代进程,这样服务处理程序可以较快的创建。据统计,创建线程与创建进程要快 10100 倍,所以又把线程称为“轻量级”进程。线程与进程不同的是:一个进程内的所有线程共享相同的全局内存、全局变量等信息,这种机制又带来了同步问题。
tcp多线程并发服务...
分类:
编程语言 时间:
2015-06-15 18:53:59
阅读次数:
519
一、tcp并发服务器概述
一个好的服务器,一般都是并发服务器(同一时刻可以响应多个客户端的请求)。并发服务器设计技术一般有:多进程服务器、多线程服务器、I/O复用服务器等。
二、多进程并发服务器
在 Linux 环境下多进程的应用很多,其中最主要的就是网络/客户服务器。多进程服务器是当客户有请求时,服务器用一个子进程来处理客户请求。父进程继续等待其它客户的请求。这种方法的...
分类:
系统相关 时间:
2015-06-15 16:34:10
阅读次数:
143
Linux中的网络编程是通过 Socket (套接字)实现。
Socket有三种类型:流式套接字(SOCK_STREAM)
流式套接字可以提供可靠的、面向连接的通讯流,它使用TCP协议。TCP保证了数据传输的正确性和顺序性。
数据报套接字(SOCK_DGRAM)
数据报套接字定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证可靠,无差错,它使用数据报协议UDP。
原...
分类:
系统相关 时间:
2015-06-13 09:54:29
阅读次数:
239
编写一个最为简单的tcp通信客户端。代码如下:
#include
#include
using namespace std;
#include
#include
#include
#include
#include
int main()
{
/*创建socket*/
int sd = socket(AF_INET, SOCK_STREAM, 0);
...
分类:
系统相关 时间:
2015-06-11 16:59:17
阅读次数:
217