Linux中有没有办法将回调函数与套接字关联?
例如,当函数
connect(sock, (struct sockaddr *)peeraddr, sizeof(*peeraddr))
字符串
已经连接了客户端和服务器,有没有办法将函数“afterRecv
“与名称为sock
的套接字关联起来,这样在函数recv
从sock
读取一些数据后,afterRecv
就会被调用?sock
是阻塞类型。这是由于在OpenSSL
的握手期间,sock
上有许多内部send/recv
调用。
如果我修改OpenSSL
,那么修改每个recv
都很麻烦。所以我想知道,我是否可以添加一个回调。
流量应为:
connect
到插座recv
函数
1.当recv
读取数据时,afterRecv
将作为recv
上的回调调用
1条答案
按热度按时间o75abkj41#
一些事件库实现了这样的回调钩子:
以及所有图形或HTTP服务器库(例如Gtk/Glib,Qt,LibOnion,...)提供(或使用)这样的事件库(围绕多路复用系统调用,如poll(2)等)。
Glib(来自GTK)和QtCore(来自Qt)都是无需任何GUI即可使用的事件库
关于C10K problem