本文整理汇总了C++中EventHandler::getParent方法的典型用法代码示例。如果您正苦于以下问题:C++ EventHandler::getParent方法的具体用法?C++ EventHandler::getParent怎么用?C++ EventHandler::getParent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EventHandler
的用法示例。
在下文中一共展示了EventHandler::getParent方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: acceptfn
void LibEventMain::acceptfn(int listener, short event, void *arg) {
EventHandler *processor = (EventHandler*) arg;
LibEventMain *plevent = (LibEventMain*) processor->getParent();
sockaddr_storage ss;
socklen_t slen = sizeof(ss);
// Investigate: Using a loop to accept connections makes it faster?
int fd = accept(listener, (sockaddr*) &ss, &slen);
if (fd < 0) {
// Investigate: Should check EWOULDBLOCK and EAGAIN?
perror("accept");
return;
}
INFO_OUT("Client connected on fd %d\n", fd);
bufferevent *bev;
evutil_make_socket_nonblocking(fd);
bev = bufferevent_socket_new(plevent->m_ebase, fd, BEV_OPT_CLOSE_ON_FREE);
processor->setContext((Context*) bev);
bufferevent_setcb(bev, readfn, NULL, errorfn, arg);
bufferevent_setwatermark(bev, EV_READ, 0, max_buff);
bufferevent_enable(bev, EV_READ | EV_WRITE);
}