summaryrefslogtreecommitdiff
path: root/examples/persistent.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/persistent.py')
-rw-r--r--examples/persistent.py30
1 files changed, 11 insertions, 19 deletions
diff --git a/examples/persistent.py b/examples/persistent.py
index 292054e..4233e3c 100644
--- a/examples/persistent.py
+++ b/examples/persistent.py
@@ -1,37 +1,29 @@
"""
This example demonstrates the use of persistent job stores. On each run, it
-adds a new alarm that fires after one minute. You can exit the program, restart
-it and observe that any previous alarms that have not fired yet are still
-active.
+adds a new alarm that fires after ten seconds. You can exit the program,
+restart it and observe that any previous alarms that have not fired yet are
+still active.
"""
from datetime import datetime, timedelta
-import sys
-import time
from apscheduler.scheduler import Scheduler
from apscheduler.jobstores.shelve_store import ShelveJobStore
def alarm(time):
- sys.stdout.write('Alarm! This alarm was scheduled at %s.\n' % time)
+ print('Alarm! This alarm was scheduled at %s.' % time)
if __name__ == '__main__':
- scheduler = Scheduler()
+ scheduler = Scheduler(standalone=True)
scheduler.add_jobstore(ShelveJobStore('example.db'), 'shelve')
- alarm_time = datetime.now() + timedelta(minutes=1)
+ alarm_time = datetime.now() + timedelta(seconds=10)
scheduler.add_date_job(alarm, alarm_time, name='alarm',
jobstore='shelve', args=[datetime.now()])
- sys.stdout.write('To clear the alarms, delete the example.db file.\n')
- sys.stdout.write('Press Ctrl+C to exit\n')
- scheduler.start()
-
+ print('To clear the alarms, delete the example.db file.')
+ print('Press Ctrl+C to exit')
try:
- # This is here to prevent the main thread from exiting so that the
- # scheduler has time to work -- this is rarely necessary in real world
- # applications
- time.sleep(9999)
- finally:
- # Shut down the scheduler so that the job store gets closed properly
- scheduler.shutdown()
+ scheduler.start()
+ except (KeyboardInterrupt, SystemExit):
+ pass