Commit c40d362a authored by Benjamin Peterson's avatar Benjamin Peterson

merge heads

parents f606e682 1abde362
......@@ -1151,9 +1151,9 @@ Text Processing".
Mertz also wrote a 3-part series of articles on functional programming
for IBM's DeveloperWorks site; see
`part 1 <http://www-128.ibm.com/developerworks/library/l-prog.html>`__,
`part 2 <http://www-128.ibm.com/developerworks/library/l-prog2.html>`__, and
`part 3 <http://www-128.ibm.com/developerworks/linux/library/l-prog3.html>`__,
`part 1 <http://www.ibm.com/developerworks/linux/library/l-prog/index.html>`__,
`part 2 <http://www.ibm.com/developerworks/linux/library/l-prog2/index.html>`__, and
`part 3 <http://www.ibm.com/developerworks/linux/library/l-prog3/index.html>`__,
Python documentation
......
......@@ -274,7 +274,7 @@ Setting up FastCGI
Each web server requires a specific module.
* Apache has both `mod_fastcgi <http://www.fastcgi.com/drupal/>`_ and `mod_fcgid
<http://fastcgi.coremail.cn/>`_. ``mod_fastcgi`` is the original one, but it
<http://httpd.apache.org/mod_fcgid/>`_. ``mod_fastcgi`` is the original one, but it
has some licensing issues, which is why it is sometimes considered non-free.
``mod_fcgid`` is a smaller, compatible alternative. One of these modules needs
to be loaded by Apache.
......@@ -365,7 +365,7 @@ testing.
A really great WSGI feature is middleware. Middleware is a layer around your
program which can add various functionality to it. There is quite a bit of
`middleware <http://wsgi.org/wsgi/Middleware_and_Utilities>`_ already
`middleware <http://www.wsgi.org/en/latest/libraries.html>`_ already
available. For example, instead of writing your own session management (HTTP
is a stateless protocol, so to associate multiple HTTP requests with a single
user your application must create and manage such state via a session), you can
......@@ -396,9 +396,9 @@ compared with other web technologies.
.. seealso::
A good overview of WSGI-related code can be found in the `WSGI wiki
<http://wsgi.org/wsgi>`_, which contains an extensive list of `WSGI servers
<http://wsgi.org/wsgi/Servers>`_ which can be used by *any* application
A good overview of WSGI-related code can be found in the `WSGI homepage
<http://www.wsgi.org/en/latest/index.html>`_, which contains an extensive list of `WSGI servers
<http://www.wsgi.org/en/latest/servers.html>`_ which can be used by *any* application
supporting WSGI.
You might be interested in some WSGI-supporting modules already contained in
......
......@@ -6,9 +6,6 @@
.. moduleauthor:: Skip Montanaro <skip@pobox.com>
.. sectionauthor:: Skip Montanaro <skip@pobox.com>
**Source code:** :source:`Lib/atexit.py`
--------------
The :mod:`atexit` module defines functions to register and unregister cleanup
functions. Functions thus registered are automatically executed upon normal
......
......@@ -472,7 +472,7 @@ into Python 2.5's :class:`queue.Queue` class.
If you use :class:`JoinableQueue` then you **must** call
:meth:`JoinableQueue.task_done` for each task removed from the queue or else the
semaphore used to count the number of unfinished tasks may eventually overflow
semaphore used to count the number of unfinished tasks may eventually overflow,
raising an exception.
Note that one can also create a shared queue by using a manager object -- see
......@@ -490,7 +490,7 @@ Note that one can also create a shared queue by using a manager object -- see
If a process is killed using :meth:`Process.terminate` or :func:`os.kill`
while it is trying to use a :class:`Queue`, then the data in the queue is
likely to become corrupted. This may cause any other processes to get an
likely to become corrupted. This may cause any other process to get an
exception when it tries to use the queue later on.
.. warning::
......@@ -692,7 +692,7 @@ Miscellaneous
(By default :data:`sys.executable` is used). Embedders will probably need to
do some thing like ::
setExecutable(os.path.join(sys.exec_prefix, 'pythonw.exe'))
set_executable(os.path.join(sys.exec_prefix, 'pythonw.exe'))
before they can create child processes. (Windows only)
......@@ -711,7 +711,7 @@ Connection Objects
Connection objects allow the sending and receiving of picklable objects or
strings. They can be thought of as message oriented connected sockets.
Connection objects usually created using :func:`Pipe` -- see also
Connection objects are usually created using :func:`Pipe` -- see also
:ref:`multiprocessing-listeners-clients`.
.. class:: Connection
......@@ -732,7 +732,7 @@ Connection objects usually created using :func:`Pipe` -- see also
.. method:: fileno()
Returns the file descriptor or handle used by the connection.
Return the file descriptor or handle used by the connection.
.. method:: close()
......@@ -756,7 +756,7 @@ Connection objects usually created using :func:`Pipe` -- see also
If *offset* is given then data is read from that position in *buffer*. If
*size* is given then that many bytes will be read from buffer. Very large
buffers (approximately 32 MB+, though it depends on the OS) may raise a
ValueError exception
:exc:`ValueError` exception
.. method:: recv_bytes([maxlength])
......@@ -1329,7 +1329,7 @@ Customized managers
>>>>>>>>>>>>>>>>>>>
To create one's own manager, one creates a subclass of :class:`BaseManager` and
use the :meth:`~BaseManager.register` classmethod to register new types or
uses the :meth:`~BaseManager.register` classmethod to register new types or
callables with the manager class. For example::
from multiprocessing.managers import BaseManager
......@@ -1580,9 +1580,9 @@ with the :class:`Pool` class.
.. method:: apply(func[, args[, kwds]])
Call *func* with arguments *args* and keyword arguments *kwds*. It blocks
till the result is ready. Given this blocks, :meth:`apply_async` is better
suited for performing work in parallel. Additionally, the passed in
function is only executed in one of the workers of the pool.
until the result is ready. Given this blocks, :meth:`apply_async` is
better suited for performing work in parallel. Additionally, *func*
is only executed in one of the workers of the pool.
.. method:: apply_async(func[, args[, kwds[, callback[, error_callback]]]])
......@@ -1603,7 +1603,7 @@ with the :class:`Pool` class.
.. method:: map(func, iterable[, chunksize])
A parallel equivalent of the :func:`map` built-in function (it supports only
one *iterable* argument though). It blocks till the result is ready.
one *iterable* argument though). It blocks until the result is ready.
This method chops the iterable into a number of chunks which it submits to
the process pool as separate tasks. The (approximate) size of these
......@@ -2060,7 +2060,7 @@ Better to inherit than pickle/unpickle
On Windows many types from :mod:`multiprocessing` need to be picklable so
that child processes can use them. However, one should generally avoid
sending shared objects to other processes using pipes or queues. Instead
you should arrange the program so that a process which need access to a
you should arrange the program so that a process which needs access to a
shared resource created elsewhere can inherit it from an ancestor process.
Avoid terminating processes
......@@ -2139,7 +2139,7 @@ Explicitly pass resources to child processes
for i in range(10):
Process(target=f, args=(lock,)).start()
Beware replacing sys.stdin with a "file like object"
Beware of replacing :data:`sys.stdin` with a "file like object"
:mod:`multiprocessing` originally unconditionally called::
......@@ -2257,7 +2257,7 @@ Synchronization types like locks, conditions and queues:
An example showing how to use queues to feed tasks to a collection of worker
process and collect the results:
processes and collect the results:
.. literalinclude:: ../includes/mp_workers.py
......
......@@ -26,11 +26,11 @@ following links:
.. seealso::
http://www.linux.com/articles/60383
http://www.debian.org/doc/manuals/maint-guide/first.en.html
for Debian users
http://linuxmafia.com/pub/linux/suse-linux-internals/chapter35.html
for OpenSuse users
http://docs.fedoraproject.org/drafts/rpm-guide-en/ch-creating-rpms.html
http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html
for Fedora users
http://www.slackbook.org/html/package-management-making-packages.html
for Slackware users
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment