queutils 0.9.3__py3-none-any.whl → 0.9.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: queutils
|
3
|
-
Version: 0.9.
|
3
|
+
Version: 0.9.4
|
4
4
|
Summary: Handy Python Queue utilies
|
5
5
|
Project-URL: Homepage, https://github.com/Jylpah/queutils
|
6
6
|
Project-URL: Bug Tracker, https://github.com/Jylpah/queutils/issues
|
@@ -38,13 +38,13 @@ Queutils *[Queue Utils]* is a package of handy Python queue classes:
|
|
38
38
|
- **AsyncQueue** - An `async` wrapper for non-async `queue.Queue`
|
39
39
|
- **IterableQueue** - An `AsyncIterable` queue that terminates when finished
|
40
40
|
- **EventCounterQueue** - An `IterableQueue` for counting events in `async` threads
|
41
|
-
- **FileQueue** - Builds an
|
41
|
+
- **FileQueue** - Builds an `IterableQueue[pathlib.Path]` of filenames from files/dirs given as input
|
42
42
|
|
43
43
|
|
44
44
|
# AsyncQueue
|
45
45
|
|
46
46
|
`AsyncQueue` is a async wrapper for non-async `queue.Queue`. It can be used to create
|
47
|
-
an `asyncio.Queue` compatible interface to a (non-async) managed `multiprocessing.Queue` and thus enable `async` code in parent/child processes to communicate over `multiprocessing.Queue` as it were an `asyncio.Queue`.
|
47
|
+
an `asyncio.Queue` compatible interface to a (non-async) managed `multiprocessing.Queue` and thus enable `async` code in parent/child processes to communicate over `multiprocessing.Queue` as it were an `asyncio.Queue`. Uses `sleep()` for `get()`/`put()` if the queue is empty/full.
|
48
48
|
|
49
49
|
## Features
|
50
50
|
|
@@ -58,7 +58,7 @@ an `asyncio.Queue` compatible interface to a (non-async) managed `multiprocessin
|
|
58
58
|
`IterableQueue` is an `asyncio.Queue` subclass that is `AsyncIterable[T]` i.e. it can be
|
59
59
|
iterated in `async for` loop. `IterableQueue` terminates automatically when the queue has been filled and emptied.
|
60
60
|
|
61
|
-
The `IterableQueue` requires "producers" (functions adding items to the queue) to register themselves and it
|
61
|
+
The `IterableQueue` requires "producers" (functions adding items to the queue) to register themselves with `add_producer()` call and it
|
62
62
|
keeps count of registered producers which are "finished" adding items to the queue. Once all the registered
|
63
63
|
producers are "finished", the queue enters into "filled" state and no new items can be added. Once an
|
64
64
|
"filled" queue is emptied, the queue becomes "done" and all new `get()` calls to the queue will
|
@@ -5,7 +5,7 @@ queutils/eventcounterqueue.py,sha256=NjT8FqEskZhjmus7L333DZU9kXoZCNsn7ydCI5HSe1U
|
|
5
5
|
queutils/filequeue.py,sha256=q2ly9H-lSCq6xuOqT1IlWgyCVyLoZiKbc0NuzmkF4aw,5360
|
6
6
|
queutils/iterablequeue.py,sha256=ZXwa9040yTawL1DMMNBXgQKiYr32nmzuSbgi-raAtZc,8664
|
7
7
|
queutils/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
8
|
-
queutils-0.9.
|
9
|
-
queutils-0.9.
|
10
|
-
queutils-0.9.
|
11
|
-
queutils-0.9.
|
8
|
+
queutils-0.9.4.dist-info/METADATA,sha256=v3MC3cKun7jnGfnR9WFs7PYQHiCEDu398YBBVEWVcqE,4768
|
9
|
+
queutils-0.9.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
10
|
+
queutils-0.9.4.dist-info/licenses/LICENSE,sha256=J1zeIKU2JVQmhwO2hHQDK8WR6zjVZ-wX8r7ZlL45AbI,1063
|
11
|
+
queutils-0.9.4.dist-info/RECORD,,
|
File without changes
|
File without changes
|