在回调函数on_accept
中,我做一个事件conn_ev
conn_ev = (struct event *)malloc(sizeof(struct event));
event_set(conn_ev, connfd, EV_READ, on_recv, conn_ev);
event_base_set(base, conn_ev);
event_add(conn_ev, NULL);
on_recv
有新连接时会触发回调函数。
在回调函数on_recv(int connfd, short event, void *conn_event)
中,我有
conn_ev = (struct event *) conn_event;
event_set(conn_ev, connfd, EV_WRITE, on_send, conn_ev);
event_base_set(base, conn_ev);
event_add(conn_ev, NULL);
所以conn_ev
在这个回调函数中修改了。
这里是否有任何可能的问题/陷阱,所以我最好是malloc
一个新的 conn_ev?
谢谢!