my bug or libev's? when multi-thread and multi-loop

2008-12-02 Thread CodeAll
Hi, Everyone: I use libev in my network server. I have one main thread with default event loop for bind/listen/accept, then dispatch the cilent fd to 4 worker thread, using ev_async and a blocking queue. Each of the worker has a ev_base_new(0). Worker monitor the client fd's EV_READ and EV_WRITE,

Re: my bug or libev's? when multi-thread and multi-loop

2008-12-02 Thread Marc Lehmann
On Tue, Dec 02, 2008 at 04:46:32PM +0800, CodeAll [EMAIL PROTECTED] wrote: queue. Each of the worker has a ev_base_new(0). What is an ev_base_new(0)? and which version of libev are you trying this with? 1. I kill -SIGSEGV the process, gdb it, found it's busy on epoll_wait() The process still

Re: my bug or libev's? when multi-thread and multi-loop

2008-12-02 Thread Marc Lehmann
On Tue, Dec 02, 2008 at 04:59:11PM +0800, CodeAll [EMAIL PROTECTED] wrote: 1. a little like http://lists.schmorp.de/pipermail/libev/2008q4/000453.html, but i tried poll backend, has problem too Not at all, actually. 2. when i generate a lot of request from 10 client, the server choose to not

Re: my bug or libev's? when multi-thread and multi-loop

2008-12-02 Thread CodeAll
More info: 1. a little like http://lists.schmorp.de/pipermail/libev/2008q4/000453.html, but i tried poll backend, has problem too 2. when i generate a lot of request from 10 client, the server choose to not keepalive(one request per connection), but the system is reusing fd. Like, fd = 14 are