LibreOffice
LibreOffice 5.3 SDK C/C++ API Reference
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | List of all members
osl::Condition Class Reference

Warning: the Condition abstraction is inadequate for any situation where there may be multiple threads setting, waiting, and resetting the same condition. More...

#include <conditn.hxx>

Public Types

enum  Result { result_ok = osl_cond_result_ok, result_error = osl_cond_result_error, result_timeout = osl_cond_result_timeout }
 

Public Member Functions

 Condition ()
 
 ~Condition ()
 
void set ()
 
void reset ()
 
Result wait (const TimeValue *pTimeout=NULL)
 Blocks the calling thread until condition is set. More...
 
bool check ()
 Checks if the condition is set without blocking. More...
 

Detailed Description

Warning: the Condition abstraction is inadequate for any situation where there may be multiple threads setting, waiting, and resetting the same condition.

It can only be used to synchronise interactions between two threads cf. lost wakeups in: http://www.cs.wustl.edu/~schmidt/win32-cv-1.html

Member Enumeration Documentation

Enumerator
result_ok 
result_error 
result_timeout 

Constructor & Destructor Documentation

osl::Condition::Condition ( )
inline
osl::Condition::~Condition ( )
inline

Member Function Documentation

bool osl::Condition::check ( )
inline

Checks if the condition is set without blocking.

void osl::Condition::reset ( )
inline
void osl::Condition::set ( )
inline
Result osl::Condition::wait ( const TimeValue pTimeout = NULL)
inline

Blocks the calling thread until condition is set.


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