本文整理汇总了C++中Watcher::setActiveEvents方法的典型用法代码示例。如果您正苦于以下问题:C++ Watcher::setActiveEvents方法的具体用法?C++ Watcher::setActiveEvents怎么用?C++ Watcher::setActiveEvents使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Watcher
的用法示例。
在下文中一共展示了Watcher::setActiveEvents方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: select
// Demultiplexing the I/O events
// Must be called in the loop thread.
int KqueueSelect::select(int timeout, WatcherList *activeList) {
int ret = -1;
ret = kevent(_kqueuefd, NULL, 0, _events, _evSize, NULL);
if (ret == -1)
{
// EINTR indicates epoll_wait was interrupted by a signal handler before
// any of the requested events occurred or the timeout expired.
if (errno != EINTR)
{
return -1;
}
return 0;
}
// Check what of the reqeusted events occurred on the file descriptors.
for (int i = 0; i < ret; ++i)
{
Watcher *w = (Watcher *)_events[i].udata;
int events = 0;
int filter = _events[i].filter;
if (filter == EVFILT_READ)
{
events |= kReadEvent;
}
if (filter == EVFILT_WRITE)
{
events |= kWriteEvent;
}
w->setActiveEvents(events);
activeList->push_back(w);
}
return 0;
}