pyqtgraph/multiprocess/__init__.py
Luke Campagnola 72006fe05b Added custom multiprocessing module:
- allows starting new processes and controlling them remotely from the parent process
  - remote processes can run their own GUI, Qt signals can be connected between processes
    (in general this is not possible with the built-in multiprocessing module due to
    the use of fork() ).
  - Control works by a system of proxy-objects such that controlling a remote process
    looks almost exactly like working with local objects.
  - Uses sockets to communicate between processes (so in theory could be made to 
    work over a network), but also includes a mode that uses fork() to allow fast
    parallelization.
  - Wicked-easy inline parallelization by adding only one line of code to break up work between
    processes (requires fork; sorry windows users)
2012-06-18 15:20:35 -04:00

23 lines
808 B
Python

"""
Multiprocessing utility library
(parallelization done the way I like it)
Luke Campagnola
2012.06.10
This library provides:
- simple mechanism for starting a new python interpreter process that can be controlled from the original process
(this allows, for example, displaying and manipulating plots in a remote process
while the parent process is free to do other work)
- proxy system that allows objects hosted in the remote process to be used as if they were local
- Qt signal connection between processes
- very simple in-line parallelization (fork only; does not work on windows) for number-crunching
TODO:
allow remote processes to serve as rendering engines that pass pixmaps back to the parent process for display
(RemoteGraphicsView class)
"""
from processes import *