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.1.tar.gz (47.8 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.1-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for qpool-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e75ee5a854057ac0daf24e31e7db1e7fc3f1ff6ac48e1907357dfbe5a0186924
MD5 e72232b3d43aa82a30f05bc6dfcf18c5
BLAKE2b-256 deba5f82f544a429037e17d4816a583e41f335326a855dba235be60d19b69e60

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for qpool-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e541359f3223ee3d35342090da1cfd48c63498a9dc88cbcf63805200bf2423df
MD5 e606767aef14ecf006ca3780b8f74ba8
BLAKE2b-256 f47aa738d003bc43f4d508aa52763040936688b4d16a94e5047c8fad0d1c1e66

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