.. method:: BaseServer.serve_forever(poll_interval=0.5)
- Handle requests until an explicit :meth:`shutdown` request.
- Poll for shutdown every *poll_interval* seconds. Ignores :attr:`self.timeout`. It also calls
- :meth:`service_actions` which may be used by a subclass or Mixin to provide
- various cleanup actions. For e.g. ForkingMixin class uses
- :meth:`service_actions` to cleanup the zombie child processes.
+ Handle requests until an explicit :meth:`shutdown` request. Poll for
+ shutdown every *poll_interval* seconds. Ignores :attr:`self.timeout`. It
+ also calls :meth:`service_actions`, which may be used by a subclass or mixin
+ to provide actions specific to a given service. For example, the
+ :class:`ForkingMixIn` class uses :meth:`service_actions` to clean up zombie
+ child processes.
.. versionchanged:: 3.3
- Added service_actions call to the serve_forever method.
+ Added ``service_actions`` call to the ``serve_forever`` method.
.. method:: BaseServer.service_actions()
- This is called by the serve_forever loop. This method is can be overridden
- by Mixin's to add cleanup or service specific actions.
+ This is called in the :meth:`serve_forever` loop. This method is can be
+ overridden by subclasses or mixin classes to perform actions specific to
+ a given service, such as cleanup actions.
.. versionadded:: 3.3
(Contributed by Ross Lagerwall in :issue:`10866`.)
+socketserver
+------------
+
+:class:`~socketserver.BaseServer` now has an overridable method
+:meth:`~socketserver.BaseServer.service_actions` that is called by the
+:meth:`~socketserver.BaseServer.serve_forever` method in the service loop.
+:class:`~socketserver.ForkingMixIn` now uses this to clean up zombie
+child proceses. (Contributed by Justin Warkentin in :issue:`11109`.)
+
+
sqlite3
-------
self.collect_children()
def service_actions(self):
- """Collect the zombie child processes regularly in the ForkingMixin.
+ """Collect the zombie child processes regularly in the ForkingMixIn.
service_actions is called in the BaseServer's serve_forver loop.
"""
if the file is closed.
- Issue #11109: New service_action method for BaseServer, used by ForkingMixin
- class for cleanup. Initial Patch by Justin Wark.
+ class for cleanup. Initial Patch by Justin Warkentin.
- Issue #12045: Avoid duplicate execution of command in
ctypes.util._get_soname(). Patch by Sijin Joseph.