socket
Doctorllm
这个作者很懒,什么都没留下…
展开
-
recv send 阻塞和非阻塞
int send( SOCKET s, const char FAR *buf, int len, int flags );不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。 该函数的第一个参数指定发送端套接字描述符; 第二个参数指明一个存放应用程序要发送数据转载 2015-01-23 10:52:07 · 351 阅读 · 0 评论 -
在线程中,解决SIGPIPE信号问题
有时候线程会出现SIGPIPE错误: (gdb) bt#0 0x00110416 in __kernel_vsyscall ()#1 0x0092f918 in send () from /lib/libpthread.so.0 这是因为在调用socket发送函数send()时,出现的异常错误,可能的原因是因为tcp连接可能不正常,导致了send()数据失败,系统会收到原创 2015-02-02 16:17:14 · 1394 阅读 · 0 评论 -
提高Linux上socket 性能
加速网络应用程序的 4 种方法使用 Sockets API,我们可以开发客户机和服务器应用程序,它们可以在本地网络上进行通信,也可以通过 Internet 在全球范围内进行通信。与其他 API 一样,您可以通过一些方法使用 Sockets API,从而提高 Socket 的性能,或者限制 Socket 的性能。本文探索了 4 种使用 Sockets API 来获取应用程序的最大性能并对转载 2015-03-27 10:41:54 · 588 阅读 · 0 评论 -
TCP协议疑难杂症全景解析
说明:1).本文以TCP的发展历程解析容易引起混淆,误会的方方面面2).本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的3).针对对象:对TCP已经有了全面了解的人。因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动和快速重传的定义4).除了《TCP/IP详解》(卷一,卷二)以及《Unix网络编程》以及Linux源代码之外,转载 2015-03-20 09:48:05 · 659 阅读 · 0 评论 -
select, iocp, epoll,kqueue及各种I/O复用机制
首先,介绍几种常见的I/O模型及其区别,如下:blocking I/Ononblocking I/OI/O multiplexing (select and poll)signal driven I/O (SIGIO)asynchronous I/O (the POSIX aio_functions)blocking I/O 这个不用多解转载 2015-03-10 10:25:35 · 480 阅读 · 0 评论