Hi all, I run a reactor in my thread, so I will get many connection by twisted, and I run another thread for write back data to any connection.<br>But I've found the data is in buffer, not sent back immediately. I traced the twisted, found it blocked in class
SelectReactor.doSelect():<br><br> while 1:<br> try:<br> r, w, ignored = _select(reads.keys(), <br> writes.keys(),<br> [], timeout)
<br> break<br> ... ...<br> #do sth<br><br>when the reactor is bloce by _select(), then my another thread modified the <strong>writes</strong> dictionary, but _select could not know if writes.keys
() is changed, so when the thread want to write something, reactor won't do response. so, the problem is above.<br><br>Is there any idea for this?<br>thanks~ <br clear="all"> <br>-- <br>eSX