本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 1.程序启动阶段创建一个线程池之后仅仅让主线程调用 accept 并把客户连接传递给池中某个可用线程。 //用于维护关于每一个线程基于信息的 Thread 结构 typedef struct ...
分类:
编程语言 时间:
2017-07-24 14:34:19
阅读次数:
160
本文参考Unix网络编程卷1,对TCP状态转换进行总结,方便掌握TCP链接中各个状态及故障分析。 1.Linux下TCP相关工具 基于Linux系统查看网络状态,首先了解几个基本查看指令。 Linux查看网络状态的命令: 网络测试使用的Linux命令:、 1.ping:检测网络连接的正常与否,主要是 ...
分类:
其他好文 时间:
2017-07-23 14:30:38
阅读次数:
261
管道是最早的Unix进程间通信形式,它存在于全部的Unix实现中。关于管道,有例如以下几点须要知道: 1、它是半双工的,即数据仅仅能在一个方向上流动。虽然在某些Unix实现中管道能够是全双工的。但须要对系统进行某些设置。在Linux系统中,它是半双工的。 2、它没有名字。因此仅仅能在具有公共祖先的进 ...
分类:
系统相关 时间:
2017-07-15 20:26:47
阅读次数:
294
这部分我要学习的是Unix下的网络编程,参照的书籍是W. Richard. Stevens的《Unix网络编程》卷一和卷二,由于本身现在从事的工作是java后台开发,对客户端-服务器的这种通信并不陌生。 学习Unix下网络编程开发不是以后要从事这方面工作,是想学一下计算机网络知识,包括其中各种概念的 ...
分类:
其他好文 时间:
2017-07-12 10:15:12
阅读次数:
124
本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 1.当在一个非堵塞的 TCP 套接字(可使用 fcntl 把套接字变成非堵塞的)上调用 connect时。 connect 将马上返回一个 EINPROGRESS 错误,只是已经发起的 TCP ...
分类:
其他好文 时间:
2017-07-09 17:24:53
阅读次数:
214
基本结构 (这部分的地址均为网络地址<网络字节序>) 1、struct sockaddr:通用套接字地址结构 此结构用于存储通用套接字地址。 数据结构定义: typedef unsigned short sa_family_t; struct sockaddr { sa_family_t sa_fa ...
分类:
其他好文 时间:
2017-07-08 18:52:01
阅读次数:
270
在学习UNIX网络编程的时候。一開始分不清 同步 和 异步,所以还是总结一下,理清下他们的差别比較好。 IO分类 IO依据对IO的调度方式可分为堵塞IO、非堵塞IO、IO复用、信号驱动IO、异步IO。 IO操作整个流程分为 可操作推断 和 实际IO操作 两个区间,我们能够称之为两个半程,前半程推断是 ...
分类:
其他好文 时间:
2017-07-05 21:23:50
阅读次数:
233
一、I/O基础入门 java1.4之前的早期版本,java对I/O的支持并不完善,开发人员在开发高性能I/O程序的时候,会面临一些巨大的挑战和困难,主要问题如下。 1、没用数据缓冲区,I/O性能存在问题; 2、没有C或者C++中的Channel概念,只有输入和输出流; 3、同步阻塞式I/O通信(BI ...
分类:
系统相关 时间:
2017-06-11 21:43:04
阅读次数:
271
str_cli 和 str_echo 函数 需要先弄清楚 3.9 readn、writen 和 readline 函数 str_cli Fgets fgets char * fgets ( char * str, int num, FILE * stream );Get string from st ...
分类:
其他好文 时间:
2017-06-11 12:58:46
阅读次数:
205
环境搭建 在尝试UNP书上的样例时,会由于找不到"unp.h"等问题无法编译成功。因此在学习之前须要先搭建好编译环境。 步骤 <1>下载 UNIX网络编程源码unpv13e.tar.gz 下载链接 http://download.csdn.net/detail/ymsdu2004/4906181 < ...
分类:
其他好文 时间:
2017-06-02 11:32:20
阅读次数:
195