PLCnext API Documentation  22.9.0.33
Public Types | Public Member Functions | List of all members
Arp::System::Commons::Ipc::AutoResetEvent Class Reference

Ipc-ready variant of Arp::System::Commons::Threading::AutoResetEvent More...

#include <AutoResetEvent.hpp>

Public Types

typedef std::shared_ptr< AutoResetEventPtr
 Definition of a pointer in the contet of an AutoResetEvent. More...
 

Public Member Functions

 AutoResetEvent (bool initial=false)
 Creates a new object with specified initial state. More...
 
void Set (void)
 Sets the event to signaled state. More...
 
void Reset (void)
 Resets the event state to non-signaled. More...
 
bool WaitOne (unsigned long timeoutMs=0)
 Suspends thread execution until event is signaled by another thread. More...
 

Detailed Description

Ipc-ready variant of Arp::System::Commons::Threading::AutoResetEvent

for more information.

Member Typedef Documentation

◆ Ptr

Definition of a pointer in the contet of an AutoResetEvent.

Constructor & Destructor Documentation

◆ AutoResetEvent()

Arp::System::Commons::Ipc::AutoResetEvent::AutoResetEvent ( bool  initial = false)
inlineexplicit

Creates a new object with specified initial state.

Parameters
initialInitial state of event.

Member Function Documentation

◆ Reset()

void Arp::System::Commons::Ipc::AutoResetEvent::Reset ( void  )
inline

Resets the event state to non-signaled.

◆ Set()

void Arp::System::Commons::Ipc::AutoResetEvent::Set ( void  )
inline

Sets the event to signaled state.

Causes a thread waiting on this event to resume its execution.

◆ WaitOne()

bool Arp::System::Commons::Ipc::AutoResetEvent::WaitOne ( unsigned long  timeoutMs = 0)
inline

Suspends thread execution until event is signaled by another thread.

Parameters
timeoutMsTimeout in milliseconds to wait for the event to become signaled. If the value is set to 0 (default) the calling thread will wait infinitly or until the event is set.
Returns
Returns false is the timeout was reached before the event was signaled, otherwise true is returned.

The documentation for this class was generated from the following file: