ISynchronizeInvoke.Invoke(Delegate, Object[]) メソッド

定義

このオブジェクトを作成したスレッド上でデリゲートを同期的に呼び出し、その呼び出しを作成元のスレッドにマーシャリングします。Synchronously executes the delegate on the thread that created this object and marshals the call to the creating thread.

public:
 System::Object ^ Invoke(Delegate ^ method, cli::array <System::Object ^> ^ args);
public object Invoke (Delegate method, object[] args);
abstract member Invoke : Delegate * obj[] -> obj
Public Function Invoke (method As Delegate, args As Object()) As Object

パラメーター

method
Delegate

コントロールのスレッドのコンテキストにおいて、呼び出すメソッドを格納している DelegateA Delegate that contains a method to call, in the context of the thread for the control.

args
Object[]

特定のメソッドに渡す引数を表す、Object 型の配列。An array of type Object that represents the arguments to pass to the given method. 引数が必要ない場合は、null を指定できます。This can be null if no arguments are needed.

戻り値

Object

呼び出されているデリゲートからの戻り値を表す Object。デリゲートに戻り値がない場合は nullAn Object that represents the return value from the delegate being invoked, or null if the delegate has no return value.

注釈

BeginInvokeとは異なり、このメソッドは同期的に動作します。つまり、が返される前にプロセスが完了するまで待機します。Unlike BeginInvoke, this method operates synchronously, that is, it waits until the process completes before returning. 呼び出し中に発生した例外は、呼び出し元に反映されます。Exceptions raised during the call are propagated back to the caller.

このメソッドは、別のスレッドからメソッドを呼び出して、適切なスレッドへの呼び出しをマーシャリングするときに使用します。Use this method when calling a method from a different thread to marshal the call to the proper thread.

適用対象