{"categories":[{"label":"Libraries","url":"https://skillfed.io/packages/category/software-development-libraries/2"}],"enrichment":{"capability":"Combines AsyncIO and multiprocessing to run concurrent async tasks across multiple worker processes, bypassing Python's GIL to achieve true parallelism for I/O-bound and CPU-bound workloads.","skillfed_tags":["asyncio","multiprocessing","concurrency"],"use_cases":["Fetching thousands of URLs concurrently across multiple processes to maximize throughput.","Running CPU-bound async tasks (e.g., data processing) in parallel without GIL contention.","Scaling async database queries across worker processes for high-concurrency workloads.","Combining async I/O (aiohttp, asyncpg) with multiprocessing for hybrid I/O and CPU parallelism.","Building async task queues that distribute work across multiple event loops."],"what_it_does":"aiomultiprocess bridges AsyncIO and multiprocessing by spawning child processes, each running its own AsyncIO event loop. This lets you execute multiple async coroutines in parallel across CPU cores, avoiding the Global Interpreter Lock that limits pure AsyncIO to a single thread. The API mirrors Python's standard multiprocessing module, so it feels familiar: you create a Pool, map async functions over data, and iterate results as they complete.\n\nThe package is designed for workloads that benefit from both concurrency (many I/O operations) and parallelism (multiple CPU cores). Each worker process can handle multiple coroutines simultaneously, making it useful for tasks like gathering thousands of network requests or running CPU-intensive async operations. It requires Python 3.8+ and has no external runtime dependencies.","worth_installing":"Yes, if you need true parallelism for async workloads and can tolerate dormant maintenance. The package is stable (no known vulnerabilities, clean install, permissive license), but the 843-day gap since last release means you should verify compatibility with your Python version and async libraries before committing. Best suited for production use when the performance gain justifies the added process overhead."},"id":"aiomultiprocess","links":{"html":"https://skillfed.io/packages/aiomultiprocess","md":"https://skillfed.io/packages/aiomultiprocess.md","pypi":"https://pypi.org/project/aiomultiprocess/"},"maintenance":{"status":"dormant"},"meta":{"latest_release":"2024-04-23","license_spdx":null,"license_treatment":"permissive","name":"aiomultiprocess","python_support":"supports_current","summary":"AsyncIO version of the standard multiprocessing module"},"popularity":{"monthly_downloads":4799965,"position":2226,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"0.9.1"}
