From 737e2e71aed0993b2e73a69e6f6b12112c0a7c77 Mon Sep 17 00:00:00 2001 From: Ryan Williams Date: Mon, 29 Mar 2010 00:35:35 -0700 Subject: [PATCH] Reversed order of operations in kill() to make the killing more immediate. --- eventlet/greenthread.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/eventlet/greenthread.py b/eventlet/greenthread.py index 65cb045..b7e0a81 100644 --- a/eventlet/greenthread.py +++ b/eventlet/greenthread.py @@ -264,6 +264,7 @@ def kill(g, *throw_args): g.main(just_raise, (), {}) except: pass - hub.schedule_call_global(0, g.throw, *throw_args) if getcurrent() is not hub.greenlet: - sleep(0) + # arrange to wake the caller back up immediately + hub.schedule_call_global(0,getcurrent().switch) + g.throw(*throw_args)