Skip to main content

A framework that exposes a simple set of APIs enabling multi-process integration with the curses screen painting library

Project description

mpcurses is a framework that exposes a simple set of APIs enabling multi-process integration with the curses screen painting library.

With the mpcurses APIs, the complexities of setting up multi-processing within a curses environment are abstracted away. The only requirement is that the target method needs to implement logging.

How it works

The method you wish to execute concurrently is decorated with the queue handler decorator. The queue handler decorator creates a new log handler that will write all logged messages within the decorated method to a thread-safe queue. The main process creates the thread-safe message queue and handles the spawning of the desired number of concurrent processes, each process will be passed the reference to the message queue upon startup. As the process executes it will send all log messages to the message queue. The main process will then read messages from the message queue as they come in and update the curses screen accordingly.

The layout of the curses screen is defined as a dictionary and can leverage builtin constructs for capturing messages, incrementing counters, and processing side effects such as changing text colors when certain messages appear. The result is a screen that is being updated dynamically from one or more concurrent processes running in the background.

For samples checkout our home page: https://github.com/soda480/mpcurses

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

mpcurses-0.0.5.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

mpcurses-0.0.5-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file mpcurses-0.0.5.tar.gz.

File metadata

  • Download URL: mpcurses-0.0.5.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.5

File hashes

Hashes for mpcurses-0.0.5.tar.gz
Algorithm Hash digest
SHA256 78df85106f6040ddb76e68f0525ab92ba8afc3a99020a584c9aac75ea2621e4b
MD5 7a2bb63cf0d4923e27f4c02199aac755
BLAKE2b-256 e6eb983877ea25d31edeb91d94924b1766c7fb6f63b067e9fe9b50e4239d82e5

See more details on using hashes here.

Provenance

File details

Details for the file mpcurses-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: mpcurses-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.5

File hashes

Hashes for mpcurses-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 dfd2f18feaea3ee27df9141887a2f4f815a0d7f384cb2c41c28147cdd0a8ece4
MD5 a1bda9d989fafad4d1f2a44bdc48ea9c
BLAKE2b-256 1ad5fc4672a2d9696281f10405d9dcc73254978ee0d8ec58062f9e4661b15d8a

See more details on using hashes here.

Provenance

Supported by

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