Queue renaming reversal part 3: move module into place and
change imports and other references. Closes #2925.
This commit is contained in:
parent
8107290fa1
commit
a6168f9e0a
|
@ -2,17 +2,15 @@
|
|||
===========================================
|
||||
|
||||
.. module:: Queue
|
||||
:synopsis: Old name for the queue module.
|
||||
|
||||
.. module:: queue
|
||||
:synopsis: A synchronized queue class.
|
||||
|
||||
.. note::
|
||||
The :mod:`Queue` module has been renamed to :mod:`queue` in Python 3.0. It
|
||||
is importable under both names in Python 2.6 and the rest of the 2.x series.
|
||||
The :mod:`Queue` module has been renamed to :mod:`queue` in Python 3.0. The
|
||||
:term:`2to3` tool will automatically adapt imports when converting your
|
||||
sources to 3.0.
|
||||
|
||||
|
||||
The :mod:`queue` module implements multi-producer, multi-consumer queues.
|
||||
The :mod:`Queue` module implements multi-producer, multi-consumer queues.
|
||||
It is especially useful in threaded programming when information must be
|
||||
exchanged safely between multiple threads. The :class:`Queue` class in this
|
||||
module implements all the required locking semantics. It depends on the
|
||||
|
@ -26,7 +24,7 @@ the first retrieved (operating like a stack). With a priority queue,
|
|||
the entries are kept sorted (using the :mod:`heapq` module) and the
|
||||
lowest valued entry is retrieved first.
|
||||
|
||||
The :mod:`queue` module defines the following classes and exceptions:
|
||||
The :mod:`Queue` module defines the following classes and exceptions:
|
||||
|
||||
.. class:: Queue(maxsize)
|
||||
|
||||
|
@ -75,7 +73,7 @@ Queue Objects
|
|||
-------------
|
||||
|
||||
Queue objects (:class:`Queue`, :class:`LifoQueue`, or :class:`PriorityQueue`)
|
||||
provide the public methods described below.
|
||||
provide the public methods described below.
|
||||
|
||||
|
||||
.. method:: Queue.qsize()
|
||||
|
@ -170,20 +168,20 @@ fully processed by daemon consumer threads.
|
|||
|
||||
Example of how to wait for enqueued tasks to be completed::
|
||||
|
||||
def worker():
|
||||
while True:
|
||||
item = q.get()
|
||||
do_work(item)
|
||||
q.task_done()
|
||||
def worker():
|
||||
while True:
|
||||
item = q.get()
|
||||
do_work(item)
|
||||
q.task_done()
|
||||
|
||||
q = Queue()
|
||||
for i in range(num_worker_threads):
|
||||
q = Queue()
|
||||
for i in range(num_worker_threads):
|
||||
t = Thread(target=worker)
|
||||
t.setDaemon(True)
|
||||
t.start()
|
||||
t.start()
|
||||
|
||||
for item in source():
|
||||
q.put(item)
|
||||
q.put(item)
|
||||
|
||||
q.join() # block until all tasks are done
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
This module constructs higher-level threading interfaces on top of the lower
|
||||
level :mod:`thread` module.
|
||||
See also the :mod:`mutex` and :mod:`queue` modules.
|
||||
See also the :mod:`mutex` and :mod:`Queue` modules.
|
||||
|
||||
The :mod:`dummy_threading` module is provided for situations where
|
||||
:mod:`threading` cannot be used because :mod:`thread` is missing.
|
||||
|
|
|
@ -534,7 +534,7 @@ The :keyword:`raise` statement
|
|||
If no expressions are present, :keyword:`raise` re-raises the last exception
|
||||
that was active in the current scope. If no exception is active in the current
|
||||
scope, a :exc:`TypeError` exception is raised indicating that this is an error
|
||||
(if running under IDLE, a :exc:`queue.Empty` exception is raised instead).
|
||||
(if running under IDLE, a :exc:`Queue.Empty` exception is raised instead).
|
||||
|
||||
Otherwise, :keyword:`raise` evaluates the expressions to get three objects,
|
||||
using ``None`` as the value of omitted expressions. The first two objects are
|
||||
|
|
|
@ -16,7 +16,7 @@ Output Formatting
|
|||
The :mod:`repr` module provides a version of :func:`repr` customized for
|
||||
abbreviated displays of large or deeply nested containers::
|
||||
|
||||
>>> import repr
|
||||
>>> import repr
|
||||
>>> repr.repr(set('supercalifragilisticexpialidocious'))
|
||||
"set(['a', 'c', 'd', 'e', 'f', 'g', ...])"
|
||||
|
||||
|
@ -174,7 +174,7 @@ tasks in background while the main program continues to run::
|
|||
|
||||
class AsyncZip(threading.Thread):
|
||||
def __init__(self, infile, outfile):
|
||||
threading.Thread.__init__(self)
|
||||
threading.Thread.__init__(self)
|
||||
self.infile = infile
|
||||
self.outfile = outfile
|
||||
def run(self):
|
||||
|
@ -198,9 +198,9 @@ variables, and semaphores.
|
|||
While those tools are powerful, minor design errors can result in problems that
|
||||
are difficult to reproduce. So, the preferred approach to task coordination is
|
||||
to concentrate all access to a resource in a single thread and then use the
|
||||
:mod:`queue` module to feed that thread with requests from other threads.
|
||||
Applications using :class:`Queue` objects for inter-thread communication and
|
||||
coordination are easier to design, more readable, and more reliable.
|
||||
:mod:`Queue` module to feed that thread with requests from other threads.
|
||||
Applications using :class:`Queue.Queue` objects for inter-thread communication
|
||||
and coordination are easier to design, more readable, and more reliable.
|
||||
|
||||
|
||||
.. _tut-logging:
|
||||
|
@ -358,11 +358,11 @@ For example, calculating a 5% tax on a 70 cent phone charge gives different
|
|||
results in decimal floating point and binary floating point. The difference
|
||||
becomes significant if the results are rounded to the nearest cent::
|
||||
|
||||
>>> from decimal import *
|
||||
>>> from decimal import *
|
||||
>>> Decimal('0.70') * Decimal('1.05')
|
||||
Decimal("0.7350")
|
||||
>>> .70 * 1.05
|
||||
0.73499999999999999
|
||||
0.73499999999999999
|
||||
|
||||
The :class:`Decimal` result keeps a trailing zero, automatically inferring four
|
||||
place significance from multiplicands with two place significance. Decimal
|
||||
|
@ -380,7 +380,7 @@ calculations and equality tests that are unsuitable for binary floating point::
|
|||
>>> sum([Decimal('0.1')]*10) == Decimal('1.0')
|
||||
True
|
||||
>>> sum([0.1]*10) == 1.0
|
||||
False
|
||||
False
|
||||
|
||||
The :mod:`decimal` module provides arithmetic with as much precision as needed::
|
||||
|
||||
|
|
|
@ -1965,7 +1965,7 @@ details.
|
|||
used to hold character data.
|
||||
(Contributed by Achim Gaedke; :issue:`1137`.)
|
||||
|
||||
* The :mod:`queue` module now provides queue classes that retrieve entries
|
||||
* The :mod:`Queue` module now provides queue classes that retrieve entries
|
||||
in different orders. The :class:`PriorityQueue` class stores
|
||||
queued items in a heap and retrieves them in priority order,
|
||||
and :class:`LifoQueue` retrieves the most recently added entries first,
|
||||
|
|
|
@ -35,7 +35,7 @@ import SocketServer
|
|||
import struct
|
||||
import cPickle as pickle
|
||||
import threading
|
||||
import queue
|
||||
import Queue
|
||||
import traceback
|
||||
import copy_reg
|
||||
import types
|
||||
|
@ -117,8 +117,8 @@ class RPCServer(SocketServer.TCPServer):
|
|||
#----------------- end class RPCServer --------------------
|
||||
|
||||
objecttable = {}
|
||||
request_queue = queue.Queue(0)
|
||||
response_queue = queue.Queue(0)
|
||||
request_queue = Queue.Queue(0)
|
||||
response_queue = Queue.Queue(0)
|
||||
|
||||
|
||||
class SocketIO(object):
|
||||
|
@ -413,7 +413,7 @@ class SocketIO(object):
|
|||
# send queued response if there is one available
|
||||
try:
|
||||
qmsg = response_queue.get(0)
|
||||
except queue.Empty:
|
||||
except Queue.Empty:
|
||||
pass
|
||||
else:
|
||||
seq, response = qmsg
|
||||
|
|
|
@ -5,7 +5,7 @@ import socket
|
|||
import traceback
|
||||
import thread
|
||||
import threading
|
||||
import queue
|
||||
import Queue
|
||||
|
||||
import CallTips
|
||||
import AutoComplete
|
||||
|
@ -85,7 +85,7 @@ def main(del_exitfunc=False):
|
|||
continue
|
||||
try:
|
||||
seq, request = rpc.request_queue.get(block=True, timeout=0.05)
|
||||
except queue.Empty:
|
||||
except Queue.Empty:
|
||||
continue
|
||||
method, args, kwargs = request
|
||||
ret = method(*args, **kwargs)
|
||||
|
|
|
@ -40,7 +40,7 @@ class AllTest(unittest.TestCase):
|
|||
self.check_all("configparser")
|
||||
self.check_all("Cookie")
|
||||
self.check_all("MimeWriter")
|
||||
self.check_all("queue")
|
||||
self.check_all("Queue")
|
||||
self.check_all("SimpleHTTPServer")
|
||||
self.check_all("SocketServer")
|
||||
self.check_all("StringIO")
|
||||
|
|
|
@ -7,7 +7,7 @@ implementation as its sole argument.
|
|||
"""
|
||||
import dummy_thread as _thread
|
||||
import time
|
||||
import queue
|
||||
import Queue
|
||||
import random
|
||||
import unittest
|
||||
from test import test_support
|
||||
|
@ -124,7 +124,7 @@ class ThreadTests(unittest.TestCase):
|
|||
"""Use to test _thread.start_new_thread() passes args properly."""
|
||||
queue.put((arg1, arg2))
|
||||
|
||||
testing_queue = queue.Queue(1)
|
||||
testing_queue = Queue.Queue(1)
|
||||
_thread.start_new_thread(arg_tester, (testing_queue, True, True))
|
||||
result = testing_queue.get()
|
||||
self.failUnless(result[0] and result[1],
|
||||
|
@ -148,7 +148,7 @@ class ThreadTests(unittest.TestCase):
|
|||
queue.put(_thread.get_ident())
|
||||
|
||||
thread_count = 5
|
||||
testing_queue = queue.Queue(thread_count)
|
||||
testing_queue = Queue.Queue(thread_count)
|
||||
if test_support.verbose:
|
||||
print
|
||||
print "*** Testing multiple thread creation "\
|
||||
|
|
|
@ -215,9 +215,7 @@ class TestStdlibRemovals(unittest.TestCase):
|
|||
|
||||
class TestStdlibRenames(unittest.TestCase):
|
||||
|
||||
renames = {'Queue': 'queue',
|
||||
'ConfigParser': 'configparser',
|
||||
}
|
||||
renames = {'ConfigParser': 'configparser'}
|
||||
|
||||
def check_rename(self, module_name, new_module_name):
|
||||
"""Make sure that:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Some simple queue module tests, plus some failure conditions
|
||||
# to ensure the Queue locks remain stable.
|
||||
import queue
|
||||
import Queue
|
||||
import sys
|
||||
import threading
|
||||
import time
|
||||
|
@ -107,12 +107,12 @@ class BaseQueueTest(unittest.TestCase, BlockingTestMixin):
|
|||
try:
|
||||
q.put("full", block=0)
|
||||
self.fail("Didn't appear to block with a full queue")
|
||||
except queue.Full:
|
||||
except Queue.Full:
|
||||
pass
|
||||
try:
|
||||
q.put("full", timeout=0.01)
|
||||
self.fail("Didn't appear to time-out with a full queue")
|
||||
except queue.Full:
|
||||
except Queue.Full:
|
||||
pass
|
||||
# Test a blocking put
|
||||
self.do_blocking_test(q.put, ("full",), q.get, ())
|
||||
|
@ -124,12 +124,12 @@ class BaseQueueTest(unittest.TestCase, BlockingTestMixin):
|
|||
try:
|
||||
q.get(block=0)
|
||||
self.fail("Didn't appear to block with an empty queue")
|
||||
except queue.Empty:
|
||||
except Queue.Empty:
|
||||
pass
|
||||
try:
|
||||
q.get(timeout=0.01)
|
||||
self.fail("Didn't appear to time-out with an empty queue")
|
||||
except queue.Empty:
|
||||
except Queue.Empty:
|
||||
pass
|
||||
# Test a blocking get
|
||||
self.do_blocking_test(q.get, (), q.put, ('empty',))
|
||||
|
@ -191,13 +191,13 @@ class BaseQueueTest(unittest.TestCase, BlockingTestMixin):
|
|||
|
||||
|
||||
class QueueTest(BaseQueueTest):
|
||||
type2test = queue.Queue
|
||||
type2test = Queue.Queue
|
||||
|
||||
class LifoQueueTest(BaseQueueTest):
|
||||
type2test = queue.LifoQueue
|
||||
type2test = Queue.LifoQueue
|
||||
|
||||
class PriorityQueueTest(BaseQueueTest):
|
||||
type2test = queue.PriorityQueue
|
||||
type2test = Queue.PriorityQueue
|
||||
|
||||
|
||||
|
||||
|
@ -205,21 +205,21 @@ class PriorityQueueTest(BaseQueueTest):
|
|||
class FailingQueueException(Exception):
|
||||
pass
|
||||
|
||||
class FailingQueue(queue.Queue):
|
||||
class FailingQueue(Queue.Queue):
|
||||
def __init__(self, *args):
|
||||
self.fail_next_put = False
|
||||
self.fail_next_get = False
|
||||
queue.Queue.__init__(self, *args)
|
||||
Queue.Queue.__init__(self, *args)
|
||||
def _put(self, item):
|
||||
if self.fail_next_put:
|
||||
self.fail_next_put = False
|
||||
raise FailingQueueException, "You Lose"
|
||||
return queue.Queue._put(self, item)
|
||||
return Queue.Queue._put(self, item)
|
||||
def _get(self):
|
||||
if self.fail_next_get:
|
||||
self.fail_next_get = False
|
||||
raise FailingQueueException, "You Lose"
|
||||
return queue.Queue._get(self)
|
||||
return Queue.Queue._get(self)
|
||||
|
||||
class FailingQueueTest(unittest.TestCase, BlockingTestMixin):
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ import select
|
|||
import thread, threading
|
||||
import time
|
||||
import traceback
|
||||
import queue
|
||||
import Queue
|
||||
import sys
|
||||
import os
|
||||
import array
|
||||
|
@ -96,7 +96,7 @@ class ThreadableTest:
|
|||
self.server_ready = threading.Event()
|
||||
self.client_ready = threading.Event()
|
||||
self.done = threading.Event()
|
||||
self.queue = queue.Queue(1)
|
||||
self.queue = Queue.Queue(1)
|
||||
|
||||
# Do some munging to start the client test.
|
||||
methodname = self.id()
|
||||
|
|
|
@ -1044,7 +1044,7 @@ str(object) printablerepresentation of an object. Class overridable
|
|||
super(type) Create an unbound super object. Used to call cooperative
|
||||
superclass methods.
|
||||
sum(sequence, Add the values in the sequence and return the sum.
|
||||
[start])
|
||||
[start])
|
||||
tuple(sequence) Creates a tuple with same elements as sequence. If already
|
||||
a tuple, return itself (not a copy).
|
||||
Returns a type object [see module types] representing
|
||||
|
@ -1952,7 +1952,7 @@ pty Pseudo terminal utilities.
|
|||
pyexpat Interface to the Expay XML parser.
|
||||
py_compile Routine to "compile" a .py file to a .pyc file.
|
||||
pyclbr Parse a Python file and retrieve classes and methods.
|
||||
queue A multi-producer, multi-consumer queue.
|
||||
Queue A multi-producer, multi-consumer queue.
|
||||
quopri Conversions to/from quoted-printable transport encoding.
|
||||
rand Don't use unless you want compatibility with C's rand().
|
||||
random Random variable generators
|
||||
|
|
|
@ -10,7 +10,7 @@ from Tkinter import *
|
|||
import websucker
|
||||
import os
|
||||
import threading
|
||||
import queue
|
||||
import Queue
|
||||
import time
|
||||
|
||||
VERBOSE = 2
|
||||
|
@ -139,7 +139,7 @@ class App:
|
|||
|
||||
def go(self, event=None):
|
||||
if not self.msgq:
|
||||
self.msgq = queue.Queue(0)
|
||||
self.msgq = Queue.Queue(0)
|
||||
self.check_msgq()
|
||||
if not self.sucker:
|
||||
self.sucker = SuckerThread(self.msgq)
|
||||
|
|
Loading…
Reference in New Issue