
linux网络编程
持成
开发中的菜鸟,菜鸟中得战斗机,为了菜鸟的荣耀,万胜!!!
https://github.com/ccovers
展开
-
SIGPIPE导致的程序退出
当服务器或客户端非正常退出的时候,另一方继续send时直接造成程序退出。 gdb调试结果 send已经的关闭的套接字时,收到SIGPIPE信号,系统对该信号的默认处理方式是程序直接退出。 若不想直接退出可以对SIGPIPE信号设置自己的处理方式或忽略。 如程序中添加: SIG_DFL 系统忽略捕获的信号 SIG_IGN 系统对捕获的信号采用默认操作原创 2017-06-20 15:57:33 · 412 阅读 · 0 评论 -
libevent多线程
使用libevent编写多线程服务端 一、设计框架: 1)主线程监听连接各种事件,创建多个工作线程处理具体业务 2)收到连接时创建对象管理,并绑定到一个线程 3)主线程监听到一个读事件,将该连接添加到所绑定的线程的处理队列 4)工作线程一次取出队列元素,从bufferevent读取数据,并处理 二、、设置bufferevent为多线程安全(也就是每次读写bufferevent都是...原创 2017-07-03 14:47:08 · 1033 阅读 · 0 评论