124 lines
2.6 KiB
ReStructuredText
124 lines
2.6 KiB
ReStructuredText
===================================
|
|
:mod:`gevent` -- common functions
|
|
===================================
|
|
|
|
.. module:: gevent
|
|
|
|
The most common functions and classes are available in the
|
|
:mod:`gevent` top level package.
|
|
|
|
Please read :doc:`/intro` for an introduction to the concepts
|
|
discussed here.
|
|
|
|
.. seealso:: :mod:`gevent.util`
|
|
|
|
.. seealso:: :doc:`/configuration`
|
|
|
|
For configuring gevent using the environment or the
|
|
``gevent.config`` object.
|
|
|
|
|
|
.. autodata:: __version__
|
|
|
|
|
|
Working With Greenlets
|
|
======================
|
|
|
|
See :class:`gevent.Greenlet` for more information about greenlet
|
|
objects.
|
|
|
|
Creating Greenlets
|
|
------------------
|
|
|
|
.. autofunction:: spawn
|
|
.. autofunction:: spawn_later
|
|
.. autofunction:: spawn_raw
|
|
|
|
|
|
Getting Greenlets
|
|
-----------------
|
|
|
|
.. function:: getcurrent()
|
|
|
|
Return the currently executing greenlet (the one that called this
|
|
function). Note that this may be an instance of :class:`Greenlet`
|
|
or :class:`greenlet.greenlet`.
|
|
|
|
Stopping Greenlets
|
|
------------------
|
|
|
|
.. autofunction:: kill(greenlet, exception=GreenletExit)
|
|
|
|
.. autofunction:: killall(greenlets, exception=GreenletExit, block=True, timeout=None)
|
|
|
|
Sleeping
|
|
========
|
|
|
|
.. autofunction:: sleep
|
|
|
|
.. autofunction:: idle
|
|
|
|
Switching
|
|
=========
|
|
|
|
.. function:: getswitchinterval() -> current switch interval
|
|
|
|
|
|
See :func:`setswitchinterval`
|
|
|
|
.. versionadded:: 1.3
|
|
|
|
|
|
.. function:: setswitchinterval(seconds)
|
|
|
|
Set the approximate maximum amount of time that callback functions
|
|
will be allowed to run before the event loop is cycled to
|
|
poll for events. This prevents code that does things like the
|
|
following from monopolizing the loop::
|
|
|
|
while True: # Burning CPU!
|
|
gevent.sleep(0) # But yield to other greenlets
|
|
|
|
Prior to this, this code could prevent the event loop from running.
|
|
|
|
On Python 3, this uses the native :func:`sys.setswitchinterval`
|
|
and :func:`sys.getswitchinterval`.
|
|
|
|
.. versionadded:: 1.3
|
|
|
|
Waiting
|
|
=======
|
|
|
|
.. autofunction:: wait
|
|
|
|
.. autofunction:: iwait
|
|
|
|
.. autofunction:: joinall
|
|
|
|
Working with multiple processes
|
|
===============================
|
|
|
|
.. note::
|
|
These functions will only be available if :func:`os.fork` is
|
|
available. In general, prefer to use :func:`gevent.os.fork` instead
|
|
of manually calling these functions.
|
|
|
|
.. autofunction:: fork
|
|
|
|
.. autofunction:: reinit
|
|
|
|
Signals
|
|
=======
|
|
|
|
.. autofunction:: signal_handler
|
|
|
|
Timeouts
|
|
========
|
|
|
|
See class :class:`gevent.Timeout` for information about Timeout objects.
|
|
|
|
.. autofunction:: with_timeout
|
|
|
|
.. LocalWords: Greenlet GreenletExit Greenlet's greenlet's
|
|
.. LocalWords: automethod
|