mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2024-12-27 05:32:41 -06:00
34 lines
938 B
Python
34 lines
938 B
Python
from __future__ import absolute_import
|
|
|
|
|
|
__implements__ = ['local',
|
|
'_start_new_thread',
|
|
'_allocate_lock',
|
|
'Lock',
|
|
'_get_ident',
|
|
'_sleep',
|
|
'_DummyThread']
|
|
|
|
|
|
import threading as __threading__
|
|
_DummyThread_ = __threading__._DummyThread
|
|
from gevent.local import local
|
|
from gevent.thread import start_new_thread as _start_new_thread, allocate_lock as _allocate_lock, get_ident as _get_ident
|
|
from gevent.hub import sleep as _sleep, getcurrent
|
|
Lock = _allocate_lock
|
|
|
|
|
|
def _cleanup(g):
|
|
__threading__._active.pop(id(g))
|
|
|
|
|
|
class _DummyThread(_DummyThread_):
|
|
# instances of this will cleanup its own entry
|
|
# in ``threading._active``
|
|
|
|
def __init__(self):
|
|
_DummyThread_.__init__(self)
|
|
g = getcurrent()
|
|
rawlink = getattr(g, 'rawlink', None)
|
|
if rawlink is not None:
|
|
rawlink(_cleanup)
|