epoll

    0热度

    1回答

    因为我们知道,我们可以使用poll/select与NETMAP:http://info.iet.unipi.it/~luigi/netmap/ 是否有可能使用epoll和是否有意义使用的epoll与NETMAP,或者它在速度上有没有优势?

    2热度

    1回答

    我正在用Android ndk,使用epoll编写网络通信程序。 我发现“epoll_wait”唤醒不是很准确 while(1){ struct epoll_event events[3]; log_string("epoll_wait start");//here will print start time events_len = epoll_wait(_epol

    0热度

    1回答

    在我的情况下,在两个epoll_wait循环(两个线程)中使用相同的fd(套接字),一个循环仅用于读取(pollin),另一个仅用于写入(pollout),pollout仅在I有数据要写。通常,当套接字被peer关闭,pollin首先接收,是否有任何最简单的方法来通知写循环触发pollout或pollerr事件(做一些干净的工作,并从epoll中删除fd)?我在套接字被peer关闭后直接从read

    0热度

    1回答

    考虑下面的情况后: 一个EPOLLIN事件被注册用于FD 0(标准输入) 用于FD 0则生成EPOLLIN事件和隐式排队读epoll的内 FD 0之前闭合(并且EPOLL_CTL_DELeted)调用epoll_wait() epoll_wait()被调用以读取排队的事件 目前: 如果标准输入是一个终端,当epoll_wait()被调用时,从步骤2 EPOLLIN事件将被报告 如果标准输入不是终端

    1热度

    2回答

    我使用以下代码作为指南并修改了下面的代码。 http://bendecplusplus.googlecode.com/svn/trunk/ssl_mycode/epoll_ssl/server.chttp://bendecplusplus.googlecode.com/svn/trunk/ssl_mycode/epoll_ssl/client.c 我已经修改了服务器端的代码如下: do { co

    2热度

    1回答

    执行暂停使用Linux timerfd的想知道使用timerfd(timerfd_create)的为Linux是否会给予超过Timer_Heap或Timer_Wheel任何性能优势。 当然,这是一个非常高的水平的问题,我所看到的唯一的地方,它在任何框架正在使用的“muduo”。还有,我没有任何的性能比较,以及。 谢谢。

    1热度

    2回答

    我正在用C编写一个基于epoll的网络服务器。当我创建我的套接字来监听传入连接时,我使用fcntl使它成为非阻塞。同样,当来自客户端的传入连接到达时,我会在对它们做任何事情之前使它们的套接字非阻塞,并且对于传出连接的套接字也是如此。 有时我的服务器得到一个SIGPIPE - 我认为这是当我尝试写入客户端已关闭的客户端连接。这对我来说似乎很陌生;我认为,用非阻塞套接字而不是SIGPIPE,我应该从呼

    0热度

    1回答

    我有两个线程可以在epoll上运行。一个线程尝试TCP连接到服务器,并使用EPOLL_CTL_ADD选项将套接字添加到epoll-fd。 另一个线程负责等待添加到epoll-fd的SD上的事件。 主题1: establish_tcp_conn() { struct epoll_event event; sd = socket(AF_INET,SOCK_STREAM,0);

    8热度

    3回答

    我正在写一个小型服务器,它将接收来自多个来源的数据并处理这些数据。收到的来源和数据很重要,但不超过epoll应该能够很好地处理。但是,所有接收到的数据都必须解析并通过大量测试来运行,这些测试非常耗时,并且尽管epoll复用也会阻塞单个线程。基本上,该模式应该如下所示:IO-loop接收数据并将其捆绑到作业中,发送到池中可用的第一个线程,捆绑由作业处理,结果传递给IO循环写入文件。 我决定去找单个I

    0热度

    1回答

    我用epoll的在我的服务器,当我“模拟”负载sleep(2): Client send: a Client send: b Client send: c Server recv: abc 但是,我想: Server recv: a Server recv: b Server recv: c 因为我使用weboscket框架,而且我想处理的是一个接一个。 我需要手动分割缓冲区?