﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ManualResetEvent" FullName="System.Threading.ManualResetEvent"><TypeSignature Maintainer="auto" Language="C#" Value="public sealed class ManualResetEvent : System.Threading.EventWaitHandle" /><TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit ManualResetEvent extends System.Threading.EventWaitHandle" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Threading.EventWaitHandle</BaseTypeName></Base><Interfaces></Interfaces><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>In the .NET Framework version 2.0, <see cref="T:System.Threading.ManualResetEvent" /> derives from the new <see cref="T:System.Threading.EventWaitHandle" /> class. A <see cref="T:System.Threading.ManualResetEvent" /> is functionally equivalent to an <see cref="T:System.Threading.EventWaitHandle" /> created with <see cref="F:System.Threading.EventResetMode.ManualReset" />. </para><block subset="none" type="note"><para>Unlike the <see cref="T:System.Threading.ManualResetEvent" /> class, the <see cref="T:System.Threading.EventWaitHandle" /> class provides access to named system synchronization events.</para></block><para><see cref="T:System.Threading.ManualResetEvent" /> allows threads to communicate with each other by signaling. Typically, this communication concerns a task which one thread must complete before other threads can proceed.</para><para>When a thread begins an activity that must complete before other threads proceed, it calls <see cref="M:System.Threading.EventWaitHandle.Reset" /> to put ManualResetEvent in the non-signaled state. This thread can be thought of as controlling the ManualResetEvent. Threads that call <see cref="M:System.Threading.WaitHandle.WaitOne(System.Int32,System.Boolean)" /> on the ManualResetEvent will block, awaiting the signal. When the controlling thread completes the activity, it calls <see cref="M:System.Threading.EventWaitHandle.Set" /> to signal that the waiting threads can proceed. All waiting threads are released.</para><para>Once it has been signaled, ManualResetEvent remains signaled until it is manually reset. That is, calls to WaitOne return immediately.</para><para>You can control the initial state of a ManualResetEvent by passing a Boolean value to the constructor, true if the initial state is signaled and false otherwise.</para><para>ManualResetEvent can also be used with the static <see cref="M:System.Threading.WaitHandle.WaitAll(System.Threading.WaitHandle[],System.Int32,System.Boolean)" /> and <see cref="M:System.Threading.WaitHandle.WaitAny(System.Threading.WaitHandle[],System.Int32,System.Boolean)" /> methods.</para><para>For more information about thread synchronization mechanisms, see <format type="text/html"><a href="465FDCF9-BA24-4D8D-A43F-D983B7CB0CC6">Manual Reset Event</a></format> in the conceptual documentation.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Notifies one or more waiting threads that an event has occurred. This class cannot be inherited.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ManualResetEvent (bool initialState);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool initialState) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="initialState" Type="System.Boolean" /></Parameters><Docs><since version=".NET 2.0" /><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If the initial state of a <see cref="T:System.Threading.ManualResetEvent" /> is signaled (that is, if it is created by passing true for <paramref name="initialState" />), threads that wait on the <see cref="T:System.Threading.ManualResetEvent" /> do not block. If the initial state is nonsignaled, threads block until the <see cref="M:System.Threading.EventWaitHandle.Set" /> method is called.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Threading.ManualResetEvent" /> class with a Boolean value indicating whether to set the initial state to signaled.</para></summary><param name="initialState"><attribution license="cc4" from="Microsoft" modified="false" />true to set the initial state signaled; false to set the initial state to nonsignaled. </param></Docs></Member><Member MemberName="Reset"><MemberSignature Language="C#" Value="public bool Reset ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><block subset="none" type="note"><para>Starting with the dnprdnext and the compact_v35_long, this member is inherited from <see cref="T:System.Threading.EventWaitHandle" />.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Sets the state of the event to nonsignaled, which causes threads to block.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if the operation succeeds; otherwise, false.</para></returns></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Set"><MemberSignature Language="C#" Value="public bool Set ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><block subset="none" type="note"><para>Starting with the dnprdnext and the compact_v35_long, this member is inherited from <see cref="T:System.Threading.EventWaitHandle" />. See <see cref="M:System.Threading.EventWaitHandle.Set" />.</para></block><para>Calling the <see cref="M:System.Threading.ManualResetEvent.Set" /> method leaves the wait handle in a signaled state until the <see cref="M:System.Threading.ManualResetEvent.Reset" /> method is called.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Sets the state of the event to signaled, which allows one or more waiting threads to proceed.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if the operation succeeds; otherwise, false.</para></returns></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion></AssemblyInfo></Member></Members></Type>