Asposecpplib
System::Threading Namespace Reference

Classes

class  AutoResetEvent
 Event to notify waiting thread that resets automatically. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  EventWaitHandle
 Event that can be sent to waiting thread. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  Interlocked
 Provides API for thread-safe operations. This is a static type with no instance services. You should never create instances of it by any means. More...
 
class  ManualResetEvent
 Event to notify waiting thread that does not reset automatically. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  Mutex
 Mutex implemnetation. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  Semaphore
 Semaphore implementation. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  Thread
 Thread implementation. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  ThreadPool
 Thread pool API allowing it pushing jobs into queue to be read by pool of worker threads. This is a static type with no instance services. You should never create instances of it by any means. More...
 
class  ThreadPoolImpl
 Thread pool internal data. This is a singleton type with memory management done by access function(s). You should never create instances of it directly. More...
 
struct  Timeout
 Threading timeout special values. This is a static type with no instance services. You should never create instances of it by any means. More...
 
class  Timer
 Timer class that executes job item in separate thread after delay. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 
class  TimerQueue
 Queue that handles Timer objects. This is just an implementation. Timer objects register there by themselves, you don't have to do so to use them - use Timer class API instead. This is a singleton type with memory management done by access function(s). You should never create instances of it directly. More...
 
class  WaitHandle
 Waiting primitive base class. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...
 

Typedefs

typedef std::function< void(System::SharedPtr< System::Object >)> ParameterizedThreadStart
 Thread function with single parameter. More...
 
typedef std::function< void()> ThreadStart
 Thread function with no parameters. More...
 
typedef std::function< void(System::SharedPtr< System::Object >)> WaitCallback
 Callback item to be executed once there is a spot. More...
 
typedef std::function< void(System::SharedPtr< System::Object >)> TimerCallback
 Callback function to be called by timer. More...
 
typedef void * wait_handle_t
 Handle type. More...
 

Enumerations

enum  ApartmentState { ApartmentState::STA = 0, ApartmentState::MTA = 1, ApartmentState::Unknown = 2 }
 Sets apartment state of the thread. More...
 
enum  EventResetMode { AutoReset = 0, ManualReset = 1 }
 Indicates how event state resets. More...
 
enum  ThreadState {
  Running = 0, StopRequested = 1, SuspendRequested = 2, Background = 4,
  Unstarted = 8, Stopped = 16, WaitSleepJoin = 32, Suspended = 64,
  AbortRequested = 128, Aborted = 256
}
 State of the thread. More...
 

Typedef Documentation

◆ ParameterizedThreadStart

Thread function with single parameter.

◆ ThreadStart

typedef std::function<void ()> System::Threading::ThreadStart

Thread function with no parameters.

◆ TimerCallback

Callback function to be called by timer.

◆ wait_handle_t

Handle type.

◆ WaitCallback

Callback item to be executed once there is a spot.

Enumeration Type Documentation

◆ ApartmentState

Sets apartment state of the thread.

Enumerator
STA 

Thread will be created in single-threaded apartment.

MTA 

Thread will be created in single-threaded apartment.

Unknown 

Thread apartment state is unspecified.

◆ EventResetMode

Indicates how event state resets.

Enumerator
AutoReset 

Event state resets automatically on reading.

ManualReset 

Event state should be reset manually.

◆ ThreadState

State of the thread.

Enumerator
Running 

Thread is running.

StopRequested 

Thread stop is requested.

SuspendRequested 

Thread suspension is requested.

Background 

Theread is being executed in background.

Unstarted 

Thread is not started.

Stopped 

Thread is stopped.

WaitSleepJoin 

Thread is bein waited to be joined.

Suspended 

Thread is suspended.

AbortRequested 

Thread abortion is requested.

Aborted 

Thread is aborted.