GNU Pth 2.0.7 review

Download
by rbytes.net on

Pth is a very portable POSIX/ANSI-C based library for Unix platforms which provides non-preemptive priority-based scheduling for mult

License: GPL (GNU General Public License)
File size: 637K
Developer: Ralf S. Engelschall
0 stars award from rbytes.net

Pth is a very portable POSIX/ANSI-C based library for Unix platforms which provides non-preemptive priority-based scheduling for multiple threads of execution also know as multithreading, inside event-driven applications.

All threads run in the same address space of the server application, but each thread has it's own individual program-counter, run-time stack, signal mask and errno variable.

The thread scheduling itself is done in a cooperative way, i.e., the threads are managed by a priority- and event-based non-preemptive scheduler. The intention is that this way one can achieve better portability and run-time performance than with preemptive scheduling.

The event facility allows threads to wait until various types of events occur, including pending I/O on filedescriptors, asynchronous signals, elapsed timers, pending I/O on message ports, thread and process termination, and even customized callback functions.

Additionally Pth provides an optional emulation API for POSIX.1c threads ("Pthreads") which can be used for backward compatibility to existing multithreaded applications.
Notice: GNU pth and OSSP pth are exactly the same.

OSSP pth just became an official part of the GNU project some time ago. That's why its primary name is now GNU pth, although it is still developed by the OSSP project only.

GNU Pth 2.0.7 keywords