Skip to main content

Trait based multiprocessing with queues

Project description

QPool

Description

Multiprocessing with Process Pools implemented using Processes and Shared Memory objects.

  • Built in progress bar.
  • Graceful shutdown by default (CTRL+C 2x, will kill immediately).
  • Automatically calls join
  • Allows re-use of pool after join, cutting down on process spawning time.

Example

pants run :example

Development setup

  1. Open repository in vscode using the following: code .

This ensures environment variable proliferation into the vscode shell

2.When prompted by vscode (lower right) to Open in Container, say Yes

3.VSCode will restart and reopen in the Container (This may take a minute if the container has not yet been built)

4.Open a new ZSH terminal in VSCode (this will initialize pants)

Run Tests

pants test ::

Rebuild lock files

To rebuild lock files (after package updates or installation) pants generate-lockfiles

Build distribution

pants package :dist

Export Virtualenv

Use pants to export virtualenvs: pants export --resolve=python-default --resolve=pytest

Source the virtualenv for use with poetry: source dist/export/python/virtualenvs/python-default/$CODE_PYTHON_VERSION.*/bin/activate

Install local directory: pip install .

Update dependencies

  1. Follow "Update Virtualenv"
  2. From the poetry shell type: poetry update
  3. Follow instructions from "Rebuild lock files"
  4. Commit the lock files

Run precommit manually

pre-commit run --all-files --hook-stage commit pre-commit run --all-files --hook-stage push

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qpool-0.2.2.tar.gz (48.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qpool-0.2.2-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file qpool-0.2.2.tar.gz.

File metadata

  • Download URL: qpool-0.2.2.tar.gz
  • Upload date:
  • Size: 48.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.21

File hashes

Hashes for qpool-0.2.2.tar.gz
Algorithm Hash digest
SHA256 29216138b6288dad7e2119eec2debede15c3db65a58490b6ebeab71e8d614ca4
MD5 8fb060ebab2c2ec1f24a1693485439f4
BLAKE2b-256 feb0bc977b754bc67289978cc997460c2e8cd074e4c654ef4aa91be94a3496f7

See more details on using hashes here.

File details

Details for the file qpool-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: qpool-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.21

File hashes

Hashes for qpool-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d075ce5aa83e70be523b024f62e4b6af4abf3ace792c8c1d3b61142019beb767
MD5 877b506d68b4898cc58be2fb823c9c10
BLAKE2b-256 499cf9d5b0f870f9636e92af0be9349b1751ec8d3600df2e9b21d13649869ecd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page