raise RuntimeError("thread already started")
if __debug__:
self._note("%s.start(): starting thread", self)
- _active_limbo_lock.acquire()
- _limbo[self] = self
- _active_limbo_lock.release()
+ with _active_limbo_lock:
+ _limbo[self] = self
_start_new_thread(self.__bootstrap, ())
self.__started.wait()
try:
self.__ident = _get_ident()
self.__started.set()
- _active_limbo_lock.acquire()
- _active[self.__ident] = self
- del _limbo[self]
- _active_limbo_lock.release()
+ with _active_limbo_lock:
+ _active[self.__ident] = self
+ del _limbo[self]
if __debug__:
self._note("%s.__bootstrap(): thread started", self)
def __init__(self):
Thread.__init__(self, name="MainThread")
self._Thread__started.set()
- _active_limbo_lock.acquire()
- _active[_get_ident()] = self
- _active_limbo_lock.release()
+ with _active_limbo_lock:
+ _active[_get_ident()] = self
def _set_daemon(self):
return False
del self._Thread__block
self._Thread__started.set()
- _active_limbo_lock.acquire()
- _active[_get_ident()] = self
- _active_limbo_lock.release()
+ with _active_limbo_lock:
+ _active[_get_ident()] = self
def _set_daemon(self):
return True
current_thread = currentThread
def activeCount():
- _active_limbo_lock.acquire()
- count = len(_active) + len(_limbo)
- _active_limbo_lock.release()
- return count
+ with _active_limbo_lock:
+ return len(_active) + len(_limbo)
active_count = activeCount
def enumerate():
- _active_limbo_lock.acquire()
- active = _active.values() + _limbo.values()
- _active_limbo_lock.release()
- return active
+ with _active_limbo_lock:
+ return _active.values() + _limbo.values()
from thread import stack_size