blob: c1d7eba523993856a7de8065cbf2eb60fa2e4fd1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
GNU Pth - The GNU Portable Threads
Copyright (c) 1999-2005 Ralf S. Engelschall <rse@gnu.org>
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 (aka ``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.
WWW: http://www.gnu.org/software/pth/
|