Fix race condition in loop destruction
Summary: See docblock in new test. If the FiberManager weakref is created after the AsyncioExecutor weakref, then the native FiberManager object may be destroyed without being drained. Unfortunately, there's no way to enforce an ordering between the destructors here (since weakrefs are cleaned up in inverse order of creation). This diff adds a `__dealloc__` method to AsyncioExecutor to drain the native FiberManager Reviewed By: yfeldblum Differential Revision: D25797920 fbshipit-source-id: d1a548ebd67e7d9153eb43b169bf009a6a986e68
Showing
Please register or sign in to comment