diff options
author | Alex Grönholm <alex.gronholm@nextday.fi> | 2020-09-20 14:30:46 +0300 |
---|---|---|
committer | Alex Grönholm <alex.gronholm@nextday.fi> | 2020-09-20 17:00:42 +0300 |
commit | 95169d277da6501b181a956791e7ea0171fbae64 (patch) | |
tree | f9ea601ff84506ff8d44799e6cdcfa723346aed9 /apscheduler/schedulers/gevent.py | |
parent | 6f6b36d83369cfb95b6b0071caf82c89818ef020 (diff) | |
download | apscheduler-95169d277da6501b181a956791e7ea0171fbae64.tar.gz |
Added the first usable scheduler, worker and datastore implementations
Diffstat (limited to 'apscheduler/schedulers/gevent.py')
-rw-r--r-- | apscheduler/schedulers/gevent.py | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/apscheduler/schedulers/gevent.py b/apscheduler/schedulers/gevent.py deleted file mode 100644 index 9ced968..0000000 --- a/apscheduler/schedulers/gevent.py +++ /dev/null @@ -1,34 +0,0 @@ - -from apscheduler.schedulers.blocking import BlockingScheduler -from apscheduler.schedulers.base import BaseScheduler - -try: - from gevent.event import Event - from gevent.lock import RLock - import gevent -except ImportError: # pragma: nocover - raise ImportError('GeventScheduler requires gevent installed') - - -class GeventScheduler(BlockingScheduler): - """A scheduler that runs as a Gevent greenlet.""" - - _greenlet = None - - def start(self, *args, **kwargs): - self._event = Event() - BaseScheduler.start(self, *args, **kwargs) - self._greenlet = gevent.spawn(self._main_loop) - return self._greenlet - - def shutdown(self, *args, **kwargs): - super().shutdown(*args, **kwargs) - self._greenlet.join() - del self._greenlet - - def _create_lock(self): - return RLock() - - def _create_default_executor(self): - from apscheduler.executors.gevent import GeventExecutor - return GeventExecutor() |