summaryrefslogtreecommitdiffstats
path: root/Doc/library/sched.rst
diff options
context:
space:
mode:
authorGiampaolo Rodola' <g.rodola@gmail.com>2011-11-22 12:33:34 (GMT)
committerGiampaolo Rodola' <g.rodola@gmail.com>2011-11-22 12:33:34 (GMT)
commitbe55d99b3d0d289b2948fdcb6c8aa975687476d5 (patch)
tree64798196c6bb7ffb76a8630af119f07c239dd331 /Doc/library/sched.rst
parentca4f20782e57ca4c754f477b19d36ac23e456b39 (diff)
downloadcpython-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/sched.rst')
-rw-r--r--Doc/library/sched.rst25
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)