diff options
author | Giampaolo Rodola' <g.rodola@gmail.com> | 2011-11-22 12:33:34 (GMT) |
---|---|---|
committer | Giampaolo Rodola' <g.rodola@gmail.com> | 2011-11-22 12:33:34 (GMT) |
commit | be55d99b3d0d289b2948fdcb6c8aa975687476d5 (patch) | |
tree | 64798196c6bb7ffb76a8630af119f07c239dd331 /Doc/library | |
parent | ca4f20782e57ca4c754f477b19d36ac23e456b39 (diff) | |
download | cpython-be55d99b3d0d289b2948fdcb6c8aa975687476d5.zip cpython-be55d99b3d0d289b2948fdcb6c8aa975687476d5.tar.gz cpython-be55d99b3d0d289b2948fdcb6c8aa975687476d5.tar.bz2 |
Fix 13245:
sched.scheduler class constructor's timefunc and delayfunct parameters are now optional.
scheduler.enter and scheduler.enterabs methods gained a new kwargs parameter.
Patch contributed by Matt Mulsow.
Diffstat (limited to 'Doc/library')
-rw-r--r-- | Doc/library/sched.rst | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/Doc/library/sched.rst b/Doc/library/sched.rst index 000dba0..a644ed2 100644 --- a/Doc/library/sched.rst +++ b/Doc/library/sched.rst @@ -14,7 +14,7 @@ The :mod:`sched` module defines a class which implements a general purpose event scheduler: -.. class:: scheduler(timefunc, delayfunc) +.. class:: scheduler(timefunc=time.time, delayfunc=time.sleep) The :class:`scheduler` class defines a generic interface to scheduling events. It needs two functions to actually deal with the "outside world" --- *timefunc* @@ -25,6 +25,9 @@ scheduler: event is run to allow other threads an opportunity to run in multi-threaded applications. + .. versionchanged:: 3.3 + *timefunc* and *delayfunc* parameters are optional. + Example:: >>> import sched, time @@ -79,26 +82,38 @@ Scheduler Objects :class:`scheduler` instances have the following methods and attributes: -.. method:: scheduler.enterabs(time, priority, action, argument) +.. method:: scheduler.enterabs(time, priority, action, argument=[], kwargs={}) Schedule a new event. The *time* argument should be a numeric type compatible with the return value of the *timefunc* function passed to the constructor. Events scheduled for the same *time* will be executed in the order of their *priority*. - Executing the event means executing ``action(*argument)``. *argument* must be a - sequence holding the parameters for *action*. + Executing the event means executing ``action(*argument, **kwargs)``. + *argument* must be a sequence holding the parameters for *action*. + *kwargs* must be a dictionary holding the keyword parameters for *action*. Return value is an event which may be used for later cancellation of the event (see :meth:`cancel`). + .. versionchanged:: 3.3 + *argument* parameter is optional. + + .. versionadded:: 3.3 + *kwargs* parameter was added. -.. method:: scheduler.enter(delay, priority, action, argument) + +.. method:: scheduler.enter(delay, priority, action, argument=[], kwargs={}) Schedule an event for *delay* more time units. Other than the relative time, the other arguments, the effect and the return value are the same as those for :meth:`enterabs`. + .. versionchanged:: 3.3 + *argument* parameter is optional. + + .. versionadded:: 3.3 + *kwargs* parameter was added. .. method:: scheduler.cancel(event) |