Issue 22304: Update multiprocessing examples to Py3 and test (original) (raw)
https://docs.python.org/2/library/multiprocessing.html#examples contains several examples in Python2 code that need to be updated for Python 3. Richard, if you have them in .py files, perhaps you could run them through 2to3 and then test.
Example where a pool of http servers share a single listening socket
from BaseHTTPServer import HTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
...
print 'Serving at http://%s:%d using %d worker processes' %
(ADDRESS[0], ADDRESS[1], NUMBER_OF_PROCESSES)
print 'To exit press Ctrl-' + ['C', 'Break'][sys.platform=='win32']
#update
from http.server import HTTPServer, SimpleHTTPRequestHandler
...
print('Serving at http://%s:%d using %d worker processes' %
(ADDRESS[0], ADDRESS[1], NUMBER_OF_PROCESSES))
print('To exit press Ctrl-' + ['C', 'Break'][sys.platform=='win32'])
This still does not run on Windows _pickle.PicklingError: Can't pickle <class '_thread.lock'>: attribute lookup lock on _thread failed but that was true in 2.7 also (#21204).