# Queue
An `asyncio.Queue` equivalence for asyncgui.
```python
import asyncgui as ag
from asyncgui_ext.queue import Queue
async def producer(q):
for c in "ABC":
await q.put(c)
print('produced', c)
async def consumer(q):
async for c in q:
print('consumed', c)
q = Queue(capacity=1)
ag.start(producer(q))
ag.start(consumer(q))
```
```
produced A
produced B
consumed A
produced C
consumed B
consumed C
```
## Installation
Pin the minor version.
```
poetry add asyncgui-ext-queue@~0.3
pip install "asyncgui-ext-queue>=0.3,<0.4"
```
## Tested on
- CPython 3.10
- CPython 3.11
- CPython 3.12
- CPython 3.13
Raw data
{
"_id": null,
"home_page": "https://github.com/asyncgui/asyncgui-ext-queue",
"name": "asyncgui-ext-queue",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "async",
"author": "Natt\u014dsai Mit\u014d",
"author_email": "flow4re2c@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/49/d2/42ea46dd978ab916ddf002bf641b06978a1c00dc947a435ac93a7497760f/asyncgui_ext_queue-0.3.1.tar.gz",
"platform": null,
"description": "# Queue\n\nAn `asyncio.Queue` equivalence for asyncgui.\n\n```python\nimport asyncgui as ag\nfrom asyncgui_ext.queue import Queue\n\nasync def producer(q):\n for c in \"ABC\":\n await q.put(c)\n print('produced', c)\n\nasync def consumer(q):\n async for c in q:\n print('consumed', c)\n\nq = Queue(capacity=1)\nag.start(producer(q))\nag.start(consumer(q))\n```\n\n```\nproduced A\nproduced B\nconsumed A\nproduced C\nconsumed B\nconsumed C\n```\n\n## Installation\n\nPin the minor version.\n\n```\npoetry add asyncgui-ext-queue@~0.3\npip install \"asyncgui-ext-queue>=0.3,<0.4\"\n```\n\n## Tested on\n\n- CPython 3.10\n- CPython 3.11\n- CPython 3.12\n- CPython 3.13\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "An asyncio.Queue equivalence for asyncgui",
"version": "0.3.1",
"project_urls": {
"Homepage": "https://github.com/asyncgui/asyncgui-ext-queue",
"Repository": "https://github.com/asyncgui/asyncgui-ext-queue"
},
"split_keywords": [
"async"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f4930fb777d80b5d648be185ca2481f29b01b4e8e0ad5977fce5174aeb1f9782",
"md5": "223b4f4210ac3313b67b6c8b93738a14",
"sha256": "9f61c80c7cc2fd39df74de3cc5092736f029943d504b6f253d13650f73372e86"
},
"downloads": -1,
"filename": "asyncgui_ext_queue-0.3.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "223b4f4210ac3313b67b6c8b93738a14",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 4485,
"upload_time": "2025-08-09T20:38:59",
"upload_time_iso_8601": "2025-08-09T20:38:59.270451Z",
"url": "https://files.pythonhosted.org/packages/f4/93/0fb777d80b5d648be185ca2481f29b01b4e8e0ad5977fce5174aeb1f9782/asyncgui_ext_queue-0.3.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "49d242ea46dd978ab916ddf002bf641b06978a1c00dc947a435ac93a7497760f",
"md5": "aebb6dc3fd02e9355fd32c25dd717f16",
"sha256": "b13fadc4ea48a1d7834e0a127b0fb49cfb2b6b2b7d3714f8a8dbf5f684990974"
},
"downloads": -1,
"filename": "asyncgui_ext_queue-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "aebb6dc3fd02e9355fd32c25dd717f16",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 3990,
"upload_time": "2025-08-09T20:39:00",
"upload_time_iso_8601": "2025-08-09T20:39:00.448717Z",
"url": "https://files.pythonhosted.org/packages/49/d2/42ea46dd978ab916ddf002bf641b06978a1c00dc947a435ac93a7497760f/asyncgui_ext_queue-0.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-09 20:39:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "asyncgui",
"github_project": "asyncgui-ext-queue",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "asyncgui-ext-queue"
}