本文整理汇总了C++中EventHandler::process方法的典型用法代码示例。如果您正苦于以下问题:C++ EventHandler::process方法的具体用法?C++ EventHandler::process怎么用?C++ EventHandler::process使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EventHandler
的用法示例。
在下文中一共展示了EventHandler::process方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: process
void process() {
while (!loopEnd) {
if (sem_wait(semNext) == -1) {
diep("sem_wait");
}
if (!pbuff || !pbuff->len) {
ERROR_OUT("Invalid buffer");
exit(1);
}
EventHandler *dest = (pbuff->destId == ClientDest) ? client : server;
if (dest == NULL) {
ERROR_OUT("Invalid dest");
exit(1);
}
dest->process(pbuff->buffer, pbuff->len, true);
}
}
示例2: readfn
void LibEventMain::readfn(bufferevent *bev, void *arg) {
EventHandler *p = (EventHandler *) arg;
INFO_OUT("Readfn %s:\n", (p ? p->getDescription() : "None"));
evbuffer *input, *output;
size_t n;
int i;
input = bufferevent_get_input(bev);
char buffer[max_buff];
//
// char *data = evbuffer_readln(input, &n, EVBUFFER_EOL_LF);
// p->process(data, n, true);
// free(data);
if ((n = evbuffer_remove(input, buffer, sizeof(buffer))) > 0) {
p->process(buffer, n, !n);
}
// Todo: What happens to the remaining buffer that is less than max_buff
}