linux
Doctorllm
这个作者很懒,什么都没留下…
展开
-
在linux下,解决mysql长连接异常错误(SIGPIPE)
1. 最近在linux下开发IM服务端,遇到一个导致服务端崩溃的问题:问题描述:服务端运行一个晚上,到了第二天早上一来,登陆客户端时,系统崩溃,从log与gdb的信息得知,崩溃在执行 mysql_ping()的时候:(gdb) bt#0 0x00110416 in __kernel_vsyscall ()#1 0x0092f918 in send () from /lib/原创 2015-02-02 15:58:20 · 1399 阅读 · 0 评论 -
recv send 阻塞和非阻塞
int send( SOCKET s, const char FAR *buf, int len, int flags );不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。 该函数的第一个参数指定发送端套接字描述符; 第二个参数指明一个存放应用程序要发送数据转载 2015-01-23 10:52:07 · 357 阅读 · 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 · 1405 阅读 · 0 评论 -
做10年Windows程序员与做10年Linux程序员的区别
如果一个程序员从来没有在linux,unix下开发过程序,一直在windows下面开发程序, 同样是工作10年, 大部分情况下与在linux,unix下面开发10年的程序员水平会差别很大。我写这篇文章并不是想贬低windows下面开发的人,做windows开发的人看了可能会感觉不舒服,我并不是这个意思,我只是说说我自己的感受,我最早开始学习编程也是在windows下面的, 学的是VB,后来转到VC转载 2015-02-17 16:19:08 · 486 阅读 · 0 评论 -
提高Linux上socket 性能
加速网络应用程序的 4 种方法使用 Sockets API,我们可以开发客户机和服务器应用程序,它们可以在本地网络上进行通信,也可以通过 Internet 在全球范围内进行通信。与其他 API 一样,您可以通过一些方法使用 Sockets API,从而提高 Socket 的性能,或者限制 Socket 的性能。本文探索了 4 种使用 Sockets API 来获取应用程序的最大性能并对转载 2015-03-27 10:41:54 · 592 阅读 · 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 · 486 阅读 · 0 评论