scheduler.py

changeset 78
83b43987e61e
parent 76
4b08fca3ce34
child 79
b075b3db3044
equal deleted inserted replaced
77:e8773133bf79 78:83b43987e61e
4 # This module simply provide a way for other threads to until a given time 4 # This module simply provide a way for other threads to until a given time
5 # 5 #
6 6
7 import time 7 import time
8 import borgend 8 import borgend
9 import sleep 9 import dreamtime
10 from threading import Condition, Lock, Thread 10 from threading import Condition, Lock, Thread
11 11
12 logger=borgend.logger.getChild(__name__) 12 logger=borgend.logger.getChild(__name__)
13 13
14 class QueuedEvent: 14 class QueuedEvent:
48 p.next=n 48 p.next=n
49 self.next=None 49 self.next=None
50 self.prev=None 50 self.prev=None
51 51
52 class ScheduledEvent(QueuedEvent): 52 class ScheduledEvent(QueuedEvent):
53 #@accepts(ScheduledEvent, sleep.Time, threading.Cond, str) 53 #@accepts(ScheduledEvent, dreamtime.Time, threading.Cond, str)
54 def __init__(self, when, cond, name=None): 54 def __init__(self, when, cond, name=None):
55 super().__init__(cond, name=name) 55 super().__init__(cond, name=name)
56 self.when=when 56 self.when=when
57 57
58 def __lt__(self, other): 58 def __lt__(self, other):
111 # when the computer wakes up from sleep 111 # when the computer wakes up from sleep
112 def __init__(self, precision=60): 112 def __init__(self, precision=60):
113 self.precision = precision 113 self.precision = precision
114 self._next_event_time = None 114 self._next_event_time = None
115 super().__init__(target = self._scheduler_thread, name = 'Scheduler') 115 super().__init__(target = self._scheduler_thread, name = 'Scheduler')
116 sleep.add_callback(self, self._wakeup_callback) 116 dreamtime.add_callback(self, self._wakeup_callback)
117 117
118 def _scheduler_thread(self): 118 def _scheduler_thread(self):
119 logger.debug("Scheduler thread started") 119 logger.debug("Scheduler thread started")
120 with self._cond: 120 with self._cond:
121 while not self._terminate: 121 while not self._terminate:

mercurial