This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author rhettinger
Recipients amaury.forgeotdarc, chris.jerdonek, docs@python, pitrou, rhettinger, techtonik
Date 2013-10-10.08:04:24
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1381392264.49.0.651682697503.issue15329@psf.upfronthosting.co.za>
In-reply-to
Content
> So, is deque a faster replacement for Queue.Queue or not?

Yes, it is faster.  The Queue module itself uses the deque internally.
  And the Queue is slowed down a bit through locks, function indirection, and additional features such as maxsize, join, and task_done.

The deque's append(), appendleft(), pop(), popleft(), and len(d) operations are thread-safe in CPython.   The append methods have a DECREF at the end (for cases where maxlen has been set), but this happens after all of the structure updates have been made and the invariants have been restored, so it is okay to treat these operations as atomic.

Closing this tracker item.
History
Date User Action Args
2013-10-10 08:04:24rhettingersetrecipients: + rhettinger, amaury.forgeotdarc, pitrou, techtonik, chris.jerdonek, docs@python
2013-10-10 08:04:24rhettingersetmessageid: <1381392264.49.0.651682697503.issue15329@psf.upfronthosting.co.za>
2013-10-10 08:04:24rhettingerlinkissue15329 messages
2013-10-10 08:04:24rhettingercreate