53 lines
4.0 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="utf-8"?>
<Type Name="ElapsedEventArgs" FullName="System.Timers.ElapsedEventArgs">
<TypeSignature Language="C#" Maintainer="auto" Value="public class ElapsedEventArgs : EventArgs" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit ElapsedEventArgs extends System.EventArgs" />
<AssemblyInfo>
<AssemblyName>System</AssemblyName>
<AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
<AssemblyVersion>1.0.3300.0</AssemblyVersion>
<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.EventArgs</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<remarks>
<para>This class provides data for the <see cref="E:System.Timers.Timer.Elapsed" /> event. The <see cref="P:System.Timers.ElapsedEventArgs.SignalTime" /> property returns a <see cref="T:System.DateTime" /> structure identifying the time when the timer was signalled.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Provides data for the <see cref="E:System.Timers.Timer.Elapsed" /> event.</para>
</summary>
</Docs>
<Members>
<Member MemberName="SignalTime">
<MemberSignature Language="C#" Value="public DateTime SignalTime { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.DateTime SignalTime" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.DateTime</ReturnType>
</ReturnValue>
<Docs>
<value>To be added: an object of type 'DateTime'</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="E:System.Timers.Timer.Elapsed" /> event is raised on a <see cref="T:System.Threading.ThreadPool" /> thread, so the event-handling method might run on one thread at the same time that a call to the <see cref="M:System.Timers.Timer.Stop" /> method runs on another thread. This might result in the <see cref="E:System.Timers.Timer.Elapsed" /> event being raised after the <see cref="M:System.Timers.Timer.Stop" /> method is called. This race condition cannot be prevented simply by comparing the <see cref="P:System.Timers.ElapsedEventArgs.SignalTime" /> property with the time when the <see cref="M:System.Timers.Timer.Stop" /> method is called, because the event-handling method might already be executing when the <see cref="M:System.Timers.Timer.Stop" /> method is called, or might begin executing between the moment when the <see cref="M:System.Timers.Timer.Stop" /> method is called and the moment when the stop time is saved. If it is critical to prevent the thread that calls the <see cref="M:System.Timers.Timer.Stop" /> method from proceeding while the event-handling method is still executing, use a more robust synchronization mechanism such as the <see cref="T:System.Threading.Monitor" /> class or the <see cref="Overload:System.Threading.Interlocked.CompareExchange" /> method. Code that uses the <see cref="Overload:System.Threading.Interlocked.CompareExchange" /> method can be found in the example for the <see cref="M:System.Timers.Timer.Stop" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets the time the <see cref="E:System.Timers.Timer.Elapsed" /> event was raised.</para>
</summary>
</Docs>
</Member>
</Members>
</Type>