Catalog PyPI
Back to packageRELEASE DETAILS

0.5.0

PyPI

aioconcurrency

Run a coroutine with each item in an iterable, concurrently

aioasyncioconcurrencyeachgeneratorlimitmapsemaphoresynchronization
Published15 Apr 2020
Direct dependencies0
Transitive dependenciesNot calculated

README

Version 0.5.0 documentation

aioconcurrency Build Status

Run a coroutine with each item in an iterable, concurrently

Install

pip install aioconcurrency

Usage example

import aioconcurrency

items = [1, 2, 3, 4]
async def f(item):
    return item * 2

async def main():
    await aioconcurrency.map(items, f, concurrency=2)  # Returns [2, 4, 6, 8]

    async for result in aioconcurrency.each(items, f, concurrency=2):
        print(result)  # Prints 2 4 6 8 in random order

Api

aioconcurrency.map

Runs the given coroutine concurrently with each item in an iterable. The list of the return values will be ordered as if ran serially.

items

An iterable object.

coro

Coroutine to feed each item to.

optional: concurrency

Number of concurrent runs of coro. Defaults to aioconcurrency.Infinite.

optional: executor

Can be an instance of ThreadPoolExecutor.

optional: loop

The asyncio event loop that will be used.

aioconcurrency.each

Runs the given coroutine concurrently with each item in an iterable. Returns a generator that may be used to iterate over the return values. The generator yields values as soon as they are available.

items

An iterable object. If an asyncio.Queue is passed then .each will read from it indefinitely.

coro

Coroutine to feed each item to.

optional: concurrency

Number of concurrent runs of coro. Defaults to aioconcurrency.Infinite.

optional: executor

Can be an instance of ThreadPoolExecutor.

optional: loop

The asyncio event loop that will be used.

optional: discard_results

If truthy, discard the return value of coro. Defaults to false.

property: wait()

Coroutine. May be used to wait until all items have been processed.

property: processed_count

The number of items that have been processed so far.

property: cancel()

Cancels all runs of coro.

Tests

pytest .

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 0

Native requirements
0 direct targetsNot calculated transitive count
No declared dependencies in this collected response

Declarations describe requirements; they are not a resolved dependency graph.

Distribution files

2 collected
aioconcurrency-0.5.0-py3.7.egg

bdist_egg · 6.79 KB · Python 3.7

Source file
aioconcurrency-0.5.0.tar.gz

sdist · 4.02 KB · Python source

Source file

Repository

PENDING
dflupu/aioconcurrency

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 21 Oct, 11:44 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:34673895162f61786da8d4108e2ae4ecef5cb30ac0377a8ecef26c99aa39d3e0

Other collected versions

View all collected versions →