bufferevent小记
Posted solanin315
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bufferevent小记相关的知识,希望对你有一定的参考价值。
如何在不同的线程使用bufferevent_read和bufferevent_write呢?
首先,我们需要在建立base之前加上evthread_use_pthreads();
evthread_use_pthreads();
struct event_base* base = event_base_new();
struct evconnlistener* listen = libev_start(base, Port);
event_base_dispatch(base);
evconnlistener_free(listen);
event_base_free(base);
接下来,可以设置全局变量来记录listen,base,bev。
这样,我们可以在其他线程中关闭libevent循环,也可以用记录的bev来
进行读写,切记,bufferevent_read,bufferevent_write和read_cb,write_cb
完全是两个分开的东西,不要把他们纠缠到一起,网上的例子很多都把他们
写在一起,让新手一头雾水,bufferevent的读写可以在任何函数中进行,只
要你有对应的bev就可以进行读写。
以上是关于bufferevent小记的主要内容,如果未能解决你的问题,请参考以下文章