Multithreading Support Module.
This module provides support for real hardware-supported parallel execution of concurrent code under the same application hood; this is commonly called "Multithreading".
By linking this module in the virtual machine through a load directive, or through the reflexive compiler module, the VM gets prepared to launch system threads and perform multithreading operations.
See the related page Falcon multithreading model. for a description on the general aspects and design of the multithreading provided by this module.
The Multithreading safety page gives an important insight about overall security of multithreading applications (and specifically about MT security in Falcon).
The Threading module and VM Interruption protocol page explains about the conformance of this module with the VM Interruption protocol.
|Barrier||Gate controlling the transit of threads for certain operations.|
|Event||Signaler of relevant processing conditions.|
|Grant||Grant for exclusive access to shared resources.|
|JoinError||Error generated when trying to wait for a unwaitable thread.|
|SyncCounter||Implements a synchronization counter (semaphore).|
|SyncQueue||Signaler of relevant processing conditions.|
|Thread||Parallel agent main class.|
|ThreadError||Error generated by thread related problems.|
|Threading||Access to static method that can be used to access threading functionalities.|
|Waitable||Base abstract class for synchronization Structures.|
|waiting_funcs||Wating functions and methods.|