diff --git a/schedule/__init__.py b/schedule/__init__.py index 89ff3b1f..d6d3836b 100644 --- a/schedule/__init__.py +++ b/schedule/__init__.py @@ -43,6 +43,7 @@ import logging import random import time +import select logger = logging.getLogger('schedule') @@ -523,3 +524,12 @@ def idle_seconds(): :data:`default scheduler instance `. """ return default_scheduler.idle_seconds + + +def wait_next(): + wait = functools.partial(select.select, [], [], []) + + if default_scheduler.next_run: + wait(idle_seconds()) + else: + raise ValueError('next job not exist.')