libevent
libevent
王有知
一个想做销售的程序员。
展开
-
libevent sample https-client time-test 居然不是ELF文件
ldd time-test不是动态可执行文件readelf -h time-testreadelf:错误:不是 ELF 文件 - 它开头的 magic 字节错误file time-testtime-test: POSIX shell script, ASCII text executable, with very long lines而 sample/.lib目录下的,才是elf文件...原创 2022-01-19 14:44:53 · 1804 阅读 · 0 评论 -
使用libevent做底层网络框架,如何正确解字节流
主要是解TCP字节流的问题。CMPP协议,中国移动通信互联网短信网关接口协议(China Mobile Peer to Peer, CMPP),其消息结构,由消息头(所有消息公共包头)Message Header和消息体Message Body两部分组成。其中,Message Header由3个字段组成:字段名字节数类型描述Total_Length4Unsigned Integer消息总长度(含消息头及消息体)Command_Id4Unsigned Integ原创 2021-11-18 16:49:23 · 192 阅读 · 0 评论 -
libevent+多线程+pipe的死锁问题
libevent+多线程+pipe的死锁问题每个线程都是一个libevent实例。线程间通信使用的是管道机制,在写端调用write()时,直接写入8个字节的消息指针。读端调用read()时,每次读取8个字节。现有A、B、C三个线程,C线程会生产消息由A线程处理,A、B线程之间会互发消息各自进行处理。那么在业务高峰期处理大量数据时,可能会出现死锁问题。具体表现为:A线程当前正在处理一个消息,然后生成一个新的消息写入B线程,如果此时B线程的管道缓冲区满了,那么A线程调用write()写入B线程时,就会阻塞原创 2021-11-17 00:18:13 · 811 阅读 · 0 评论