◐ Shell
clean mode source ↗

Message 234448 - Python tracker

Currently, IocpProactor.connect_pipe() is implemented with QueueUserWorkItem() which starts a thread that cannot be interrupted. Because of that, this function requires special cases in _register() and close() methods of IocpProactor.

While fixing the issue #23095, I saw that IocpProactor.connect_pipe() causes "GetQueuedCompletionStatus() returned an unexpected event" messages to be logged, but also to hang the test suite.

I propose a solution to reimplement IocpProactor.connect_pipe() without a thread:
https://code.google.com/p/tulip/issues/detail?id=197

It should fix this issue.