A framework that exposes a simple set of APIs enabling multi-process integration with the curses screen painting library
Project description
The mpcurses provides a framework that enables a function to be executed at scale and its execution to be visualized on screen at runtime. It consists of a simple set of APIs that provide an abstraction for multiprocessing and the curses screen painting library. The main features:
Execute a function across one or more concurrent processes
Queue execution to ensure a predefined number of processes are running
Visualize function execution using curses screen
Define a screen layout using a Python dict
Leverage built-in directives for dynamically updating the screen * Keep numeric counts * Update text values * Update text colors * Maintain visual indicators * Update progress bars * Display tables
The framework can be used on any ordinary Python function. The only requirement for enabling function scale and execution visualization is to ensure the function implements logging and a to provide a screen layout definition. The framework takes care of setting up the multiprocessing, configuring the curses screen and the maintaining the thread-safe queues required for communication.
Refer to [How It Works](https://github.com/soda480/mpcurses/wiki/How-It-Works) for additional detail.
Refer to [API Reference](https://github.com/soda480/mpcurses/wiki/API-Reference) for description of the API methods and the screen layout directives.
For samples checkout our home page: https://github.com/soda480/mpcurses
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mpcurses-0.0.14-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | abdd1ba2e4387b31a72cf5342971ab2de1a4cc3ad5364fd3cd6cc120edb9071d |
|
MD5 | 8195ecbea8ac4205547ee8a6b6b38758 |
|
BLAKE2b-256 | e294d8ef365ef274c651a86e41f8c95bb6ac8e1e724ba2480a1b4f4fc71520cd |