diff options
author | Fred Drake <fdrake@acm.org> | 2000-08-18 15:50:54 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 2000-08-18 15:50:54 (GMT) |
commit | 7b4fc17c6d6f6ee802ca909ee646eaedeee8e2ac (patch) | |
tree | 34ea960ffd356e9156a3148b7e4914e701d01f61 /Lib/threading.py | |
parent | def003845b687b785f70d655a5372906f7e042d2 (diff) | |
download | cpython-7b4fc17c6d6f6ee802ca909ee646eaedeee8e2ac.zip cpython-7b4fc17c6d6f6ee802ca909ee646eaedeee8e2ac.tar.gz cpython-7b4fc17c6d6f6ee802ca909ee646eaedeee8e2ac.tar.bz2 |
Revise to use atexit instead of monkeying with sys.exitfunc directly.
Diffstat (limited to 'Lib/threading.py')
-rw-r--r-- | Lib/threading.py | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/Lib/threading.py b/Lib/threading.py index fb2eb21..4921f0e 100644 --- a/Lib/threading.py +++ b/Lib/threading.py @@ -462,11 +462,8 @@ class _MainThread(Thread): _active_limbo_lock.acquire() _active[_get_ident()] = self _active_limbo_lock.release() - try: - self.__oldexitfunc = _sys.exitfunc - except AttributeError: - self.__oldexitfunc = None - _sys.exitfunc = self.__exitfunc + import atexit + atexit.register(self.__exitfunc) def _set_daemon(self): return 0 @@ -480,10 +477,6 @@ class _MainThread(Thread): while t: t.join() t = _pickSomeNonDaemonThread() - if self.__oldexitfunc: - if __debug__: - self._note("%s: calling exit handler", self) - self.__oldexitfunc() if __debug__: self._note("%s: exiting", self) self._Thread__delete() |