Queue-like items: iterable queues and channels.
Latest release 20200521: IterableQueue,IterablePriorityQueue: simplify wrappers, bypasses weird bug from overengineering these.
Class Channel
A zero-storage data passage. Unlike a Queue(1), put() blocks waiting for the matching get().
Function IterablePriorityQueue(*args, capacity=0, name=None, **kw)
Factory to create an iterable PriorityQueue.
Function IterableQueue(*args, capacity=0, name=None, **kw)
Factory to create an iterable Queue.
Class NullQueue(cs.resources.MultiOpenMixin)
A queue-like object that discards its inputs. Calls to .get() raise Queue_Empty.
Method NullQueue.__init__(self, blocking=False, name=None)
Initialise the NullQueue.
Parameters:
blocking: if true, calls to .get() block until .shutdown(). Default: False.name: a name for this NullQueue.
Class PushQueue(cs.resources.MultiOpenMixin)
A puttable object which looks like an iterable Queue.
Calling .put(item) calls func_push supplied at initialisation
to trigger a function on data arrival, whose processing is mediated
queued via a Later for delivery to the output queue.
Method PushQueue.__init__(self, name, functor, outQ)
Initialise the PushQueue with the Later L, the callable functor
and the output queue outQ.
Parameters:
functoris a one-to-many function which accepts a single item of input and returns an iterable of outputs; it may be a generator. These outputs are passed to outQ.put individually as received.outQis a MultiOpenMixin which accepts via its .put() method.
Class TimerQueue
Class to run a lot of "in the future" jobs without using a bazillion Timer threads.
Release Log
Release 20200521: IterableQueue,IterablePriorityQueue: simplify wrappers, bypasses weird bug from overengineering these.
Release 20191007:
- PushQueue: improve str.
- Clean lint, drop cs.obj dependency.
Release 20190812: _QueueIterator: do MultiOpenMixin.init so that str is functional.
Release 20181022: Bugfix Channel, drasticly simplify PushQueue, other minor changes.
Release 20160828:
- Use "install_requires" instead of "requires" in DISTINFO.
- TimerQueue.add: support optional *a and **kw arguments for func.
- Many bugfixes and internal changes.
Release 20150115: More PyPI metadata fixups.
Release 20150111: Initial PyPI release.
Release files for cs-queues 20200521
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cs.queues-20200521.tar.gz | 6.9 kB | Details |
Release files / cs.queues-20200521.tar.gz
| Download URL | cs.queues-20200521.tar.gz |
|---|---|
| Size | 6.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
03b589f38315420cd82c6af78666545bd9fbf09be76ff22e4a6c764d110919b4
|
|
BLAKE2b-256 checksum How to use checksums |
fa956b55abf70685293eff6b25e9684eaa6c65fd20a541dc81b4b2765d98aeae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.7
|