using System; namespace System.ComponentModel { /// Provides a way to synchronously or asynchronously execute a delegate. // Token: 0x02000093 RID: 147 public interface ISynchronizeInvoke { /// Gets a value indicating whether the caller must call when calling an object that implements this interface. /// true if the caller must call ; otherwise, false. // Token: 0x17000150 RID: 336 // (get) Token: 0x060004FD RID: 1277 bool InvokeRequired { get; } /// Asynchronously executes the delegate on the thread that created this object. /// An interface that represents the asynchronous operation started by calling this method. /// A to a method that takes parameters of the same number and type that are contained in . /// An array of type to pass as arguments to the given method. This can be null if no arguments are needed. // Token: 0x060004FE RID: 1278 IAsyncResult BeginInvoke(Delegate method, object[] args); /// Waits until the process started by calling completes, and then returns the value generated by the process. /// An that represents the return value generated by the asynchronous operation. /// An interface that represents the asynchronous operation started by calling . // Token: 0x060004FF RID: 1279 object EndInvoke(IAsyncResult result); /// Synchronously executes the delegate on the thread that created this object and marshals the call to the creating thread. /// An that represents the return value from the delegate being invoked, or null if the delegate has no return value. /// A that contains a method to call, in the context of the thread for the control. /// An array of type that represents the arguments to pass to the given method. This can be null if no arguments are needed. // Token: 0x06000500 RID: 1280 object Invoke(Delegate method, object[] args); } }