メソッドの数delegate
を参照するがあるとします。bar
thissomeDelegate(someParameter);
または thisのようにデリゲートを呼び出すsomeDelegate.Invoke(someParameter);
と、実際には、このデリゲートが参照するメソッドが次々と同期的に呼び出されますよね? この呼び出しを Asynchronous にする方法はありますか?
1 に答える
3
BeginInvoke
の代わりに使用できますInvoke
。これにより、すべての個々のデリゲートが非同期に呼び出されますが、それでもシリアルに呼び出されます。(次にEndInvoke
、 に渡すコールバックを呼び出す必要がありますBeginInvoke
。詳細については、 MSDNを参照してください。)
デリゲートを並行して呼び出したい場合は、MulticastDelegate.GetInvocationList
それらを個別に取得してから、それらParallel.Invoke
を呼び出すようなものを使用できます。
于 2013-08-24T09:21:36.203 に答える