python: Why diff processes return same epoll object when calling select.epoll()
<p><b>My goal</b>: start N sub-processes, each deal with different socket sets.
-- This means different epoll objects are needed.<br>
<b>Porblem</b>: When i call select.epoll() in sub-processes, it returns the same object.<br>
Here's a simple example below:</p>

<pre><code>from multiprocessing import Process,Lock
import time,select,os

class A(Process):
    def run(self):
        fd = select.epoll()
        print 'A.pid=',os.getpid(),'poll_fd:', fd, fd.fileno()
        while 1:
            poll_list = fd.poll(timeout=3600)
            for fd,events in poll_list:
                pass

class B(Process):
    def run(self):
        fd = select.epoll()
        print 'B.pid=',os.getpid(),'poll_fd:', fd, fd.fileno()
        while 1:
            poll_list = fd.poll(timeout=3600)
            for fd,events in poll_list:
                pass

A().start()
B().start()
</code></pre>

<p>Why did this happen?<br>
What should i do to fix it?<br>
Any help will be appreciated.?<br></p>