DotNetDupe 4.0.6
C++17/20 Implementation of the .NET Base Class Library (BCL)
Loading...
Searching...
No Matches
WaitHandle.h
Go to the documentation of this file.
1
3
4#pragma once
5
6#include "Common.h"
7#include "System/Object.h"
8
9namespace DotNetDupe {
10 namespace System {
11 namespace Threading {
12
18 class WaitHandle : public Object {
19 public:
22
25 DOTNETDUPE_API virtual bool WaitOne() = 0;
26
30 DOTNETDUPE_API virtual bool WaitOne(int millisecondsTimeout) = 0;
31 };
32
35 class LockWaitHandle : public WaitHandle {
36 public:
39
43 DOTNETDUPE_API virtual int Release(int releaseCount = 1) = 0;
44 };
45
46 }
47 }
48}
Defines common cross-platform macros, export decorators, and fundamental types.
#define DOTNETDUPE_API
Platform-specific linkage decoration for exporting or importing library symbols.
Definition Common.h:20
Base object class for DotNetDupe mirroring .NET System.Object.
Supports all classes in the DotNetDupe class hierarchy.
Definition Object.h:18
Abstract base class for wait handles that support releasing acquire counts.
Definition WaitHandle.h:35
virtual int Release(int releaseCount=1)=0
Exits the wait handle and returns the previous count.
virtual ~LockWaitHandle()
Releases resources used by the LockWaitHandle.
Definition WaitHandle.h:38
Encapsulates operating system-specific objects that wait for exclusive access to shared resources.
Definition WaitHandle.h:18
virtual bool WaitOne(int millisecondsTimeout)=0
Blocks the current thread until the current WaitHandle receives a signal, using a 32-bit signed integ...
virtual bool WaitOne()=0
Blocks the current thread until the current WaitHandle receives a signal.
virtual ~WaitHandle()
Releases resources used by the WaitHandle.
Definition WaitHandle.h:21