The standard C++ libraries have very little functionality for handling Operating System processes.
The plan for this repository is to hold C++ classes for managing Windows processes, using a design
similar to the .Net Process class.
2.0 Design Musings
Fig 1. ProcessPool Structure
There is no ProcessPool in this repository. I plan to put one here sometime next year.
Intended functionalities for this repository are to:
Create child processes, with the ability to configure the way they interact with their parent
process.
Establish interprocess communication through named-pipes or message-passing communication
channels.
Gracefully shut down processes.
Create and manage process pools - would be useful for a distributed test harness, for example.
Developing a process pool was an assigned project for my Syracuse University graduate course
CSE687 in the
Fall of 2018. The project statement
for that assignment discusses how a process pool can be developed.
3.0 Status
Right now, there is a rudimentary Process class, developed as a prototype for use in
CSE687 - Object Oriented Design projects, at Syracuse University.
The prototype has very little of the planned functionality. It can create processes, and set
a callback function called when a child process shuts down, but very little else.
Eventually, my plan is to implement a process pool and associated github repository. Lots of other
things to do first. At this time there is just a starter Process package.