Name
WaitHandle
Synopsis
This class encapsulates
much of the logic for dealing with synchronization handles,
which allow much more fine-grained synchronization control
than simple thread locking. Once you have references to one
or more WaitHandle
subclasses, use the static WaitOne()
or WaitAny()
methods to obtain a lock on any single handle or all of the handles,
respectively. The WaitOne()
instance
method acquires the lock for a specific WaitHandle
. If a
thread blocks and cannot obtain the necessary locks, it enters
the ThreadState.WaitSleepJoin
state until the locks can be obtained.
public abstract class WaitHandle : MarshalByRefObject : IDisposable { // Public Constructors public method WaitHandle(); // Public Static Fields public const field int WaitTimeout; // =258 // Protected Static Fields protected static readonly field IntPtr InvalidHandle; // =-1 // Public Instance Properties public virtual field IntPtr Handle{set; get; } // Public Static Methods public static method bool WaitAll( WaitHandle[] waitHandles); public static method bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); public static method bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); public static method int WaitAny( WaitHandle[] waitHandles); public static method int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); public static method int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // Public ...
Get C# in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.