xtd: xtd::threading Namespace Reference (original) (raw)

The xtd::threading namespace provides classes and interfaces that enable multithreaded programming. In addition to classes for synchronizing thread activities and access to data ( xtd::threading::mutex, xtd::threading::monitor, xtd::threading::interlocked, xtd::threading::auto_reset_event, and so on), this namespace includes a xtd::threading::thread_pool class that allows you to use a pool of system-supplied threads, and a xtd::threading::timer class that executes callback methods on thread pool threads.

Namespaces
namespace tasks
The xtd::threading::tasks namespace provides types that simplify the work of writing concurrent and asynchronous code. The main types are xtd::threading::tasks::task which represents an asynchronous operation that can be waited on and cancelled, and xtd::threading::tasks::task <result_t>, which is a task that can return a value. The xtd::threading::tasks::task_factory class provides static methods for creating and starting tasks, and the xtd::threading::tasks::task_scheduler class provides the default thread scheduling infrastructure.
namespace this_thread
The xtd::threading::this_thread namespace contains some current thread properties and sheduling methods.
Classes
class abandoned_mutex_exception
The exception that is thrown when one thread acquires a xtd::threading::mutex object that another thread has abandoned by exiting without releasing it. More...
class auto_reset_event
Represents a thread synchronization event that, when signaled, resets automatically after releasing a single waiting thread. This class cannot be inherited. More...
class barrier
Enables multiple tasks to cooperatively work on an algorithm in parallel through multiple phases. More...
class barrier_post_phase_exception
The exception that is thrown when the post-phase action of a xtd::threading::barrier fails. More...
class cancellation_token
Propagates notification that operations should be canceled. More...
class cancellation_token_registration
Propagates notification that operations should be canceled. More...
class cancellation_token_source
Signals to a xtd::threading::cancellation_token that it should be canceled. More...
class countdown_event
Represents a synchronization primitive that is signaled when its count reaches zero. More...
class event_wait_handle
Represents a thread synchronization event. More...
class interlocked
Provides atomic operations for variables that are shared by multiple threads. More...
class jthread
Creates and controls an automatically rejoins on destruction thread, sets its priority, and gets its status. More...
class lock
Provides a mechanism that synchronizes access to objects with xtd::threading::monitor. More...
class lock_guard
Provides a mechanism that synchronizes access to objects with xtd::threading::mutex. More...
class lock_recursion_exception
The exception that is thrown when recursive entry into a lock is not compatible with the recursion policy for the lock. More...
class manual_reset_event
Represents a thread synchronization event that, when signaled, must be reset manually. This class cannot be inherited. More...
class monitor
Provides a mechanism that synchronizes access to objects. More...
class mutex
A synchronization primitive that can also be used for interprocess synchronization. More...
class registered_wait_handle
A synchronization primitive that can also be used for interprocess synchronization. More...
class semaphore
Limits the number of threads that can access a resource or pool of resources concurrently. More...
class semaphore_full_exception
The exception that is thrown when a method call is invalid for the object's current state. More...
class spin_lock
Provides a mutual exclusion lock primitive where a thread trying to acquire the lock waits in a loop repeatedly checking until the lock becomes available. More...
class synchronization_lock_exception
The exception that is thrown when a method requires the caller to own the lock on a given Monitor, and the method is invoked by a caller that does not own that lock. More...
class thread
Creates and controls a thread, sets its priority, and gets its status. More...
class thread_abort_exception
The exception that is thrown when a method call is invalid for the object's current state. More...
class thread_exception_event_args
Provides data for the xtd::forms::application::thread_exception event. More...
class thread_interrupted_exception
The exception that is thrown when a Thread is interrupted while it is in a waiting state. More...
class thread_local_object
Provides thread-local storage of data. More...
class thread_pool
Provides a pool of threads that can be used to execute tasks, post work items, process asynchronous I/O, wait on behalf of other threads, and process timers. More...
class thread_state_exception
The exception that is thrown when a Thread is in an invalid ThreadState for the method call. More...
class timeout
Contains a constant used to specify an infinite amount of time. This class cannot be inherited. More...
class timer
Provides a mechanism for executing a method on a thread pool thread at specified intervals. This class cannot be inherited. More...
class wait_handle
Encapsulates operating system specific objects that wait for exclusive access to shared resources. More...
class wait_handle_cannot_be_opened_exception
The exception that is thrown when a Thread is in an invalid ThreadState for the method call. More...
Alias
using parameterized_thread_start
Represents the method that executes on a xtd::threading::thread.
using thread_start
Represents the method that executes on a xtd::threading::thread.
using timer_callback
Represents the method that handles calls from a xtd::threading::timer.
using wait_callback
Represents a callback method to be executed by a thread pool thread.
using wait_or_timer_callback
Represents a method to be called when a xtd::threading::wait_handle is signaled or times out.
using thread_exception_event_handler
Represents the method that will handle the xtd::forms::application::thread_exception event of an xtd::forms::application.
Enumerations
enum class event_reset_mode { event_reset_mode::auto_reset, event_reset_mode::manual_reset }
Indicates whether an xtd::threading::event_wait_handle is reset automatically or manually after receiving a signal. More...
enum class thread_priority { thread_priority::lowest, thread_priority::below_normal, thread_priority::normal, thread_priority::above_normal, thread_priority::highest }
Specifies the scheduling priority of a system::threading::thread. More...
enum class thread_state { thread_state::running, thread_state::stop_requested, thread_state::suspend_requested, thread_state::background, thread_state::unstarted, thread_state::stopped, thread_state::wait_sleep_join, thread_state::suspended, thread_state::abort_requested, thread_state::aborted }
Specifies the execution states of a System::Threading::Thread. More...