Control.EndInvoke Method (IAsyncResult)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Retrieves the return value of the asynchronous operation represented by the IAsyncResult passed.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public object EndInvoke(
	IAsyncResult asyncResult


Type: System.IAsyncResult

The IAsyncResult that represents a specific invoke asynchronous operation, returned when calling BeginInvoke.

Return Value

Type: System.Object

The Object generated by the asynchronous operation.

Exception Condition

The asyncResult parameter value is null.


The asyncResult object was not created by a preceding call of the BeginInvoke method from the same control.

If the asynchronous operation has not been completed, this function will block until the result is available.


In addition to the InvokeRequired property, there are four methods on a control that are thread safe: Invoke, BeginInvoke, EndInvoke, and CreateGraphics if the handle for the control has already been created. Calling CreateGraphics before the control's handle has been created on a background thread can cause illegal cross thread calls. For all other method calls, you should use one of the invoke methods to marshal the call to the control's thread.

.NET Framework
Available since 1.1
Return to top