![]() |
TSDuck v3.44-4659
MPEG Transport Stream Toolkit
|
Multi-threading and synchronization features. More...

Classes | |
| class | ts::MessagePriorityQueue< MSG, COMPARE > |
| Template message queue for inter-thread communication with priority. More... | |
| class | ts::MessageQueue< MSG > |
| Template message queue for inter-thread communication. More... | |
| class | ts::null_mutex |
A null_mutex class which can be used to replace std::mutex or std::recursive_mutex. More... | |
| class | ts::Thread |
| Base class for threads. More... | |
| class | ts::ThreadAttributes |
| Set of attributes for a thread object (ts::Thread). More... | |
| struct | ts::ThreadSafetyMutex< THS > |
| Define the appropriate mutex class for a given level of thread-safety. More... | |
| class | ts::WatchDog |
| General-purpose timeout watchdog. More... | |
| class | ts::WatchDogHandlerInterface |
| Expiration handler interface for general-purpose timeout watchdog. More... | |
Macros | |
| #define | TS_STATIC_VARIABLE(class_name, function_name) |
| Define a static variable inside a translation unit. | |
Enumerations | |
| enum class | ts::ThreadSafety { ts::ThreadSafety::Full , ts::ThreadSafety::None } |
| Thread safety property of a class. More... | |
Multi-threading and synchronization features.
| #define TS_STATIC_VARIABLE | ( | class_name, | |
| function_name | |||
| ) |
Define a static variable inside a translation unit.
When a static variable in a source file are invoked in the initializaiton phase, it is not possible to rely on the fact that the object is already initialized. This macro solves this problem using an encapsulation of the object inside a private function of the module.
| class_name | Fully qualified name of the object class. |
| function_name | Name of the instance function which returns the object. |
|
strong |