inherit the Scheduler class' threads based event loop
This commit is contained in:
parent
1795d16112
commit
31433c1610
1 changed files with 5 additions and 8 deletions
|
|
@ -18,9 +18,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
|
||||
"""
|
||||
|
||||
import sched
|
||||
import time
|
||||
import select
|
||||
import sys
|
||||
|
||||
from weboob import Weboob
|
||||
|
|
@ -34,18 +31,18 @@ __all__ = ['PromptApplication']
|
|||
|
||||
class PromptScheduler(Scheduler):
|
||||
def __init__(self, prompt_cb, read_cb):
|
||||
self.scheduler = sched.scheduler(time.time, self.sleep)
|
||||
Scheduler.__init__(self)
|
||||
self.read_cb = read_cb
|
||||
self.prompt_cb = prompt_cb
|
||||
|
||||
def sleep(self, d):
|
||||
self.prompt_cb()
|
||||
def run(self):
|
||||
try:
|
||||
read, write, excepts = select.select([sys.stdin], [], [], d or None)
|
||||
if read:
|
||||
while not self.stop_event.isSet():
|
||||
self.prompt_cb()
|
||||
line = sys.stdin.readline()
|
||||
if not line:
|
||||
self.want_stop()
|
||||
sys.stdout.write('\n')
|
||||
else:
|
||||
self.read_cb(line.strip())
|
||||
except KeyboardInterrupt:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue