VB .NETでは、RaiseEvent X()を呼び出すと、イベントXを非同期または同期で処理する関数が処理されます。私はRaiseEventとイベントの処理が他のスレッドで明示的に作成されていない限り同期的であったという印象を受けました。私は別の言い方をしました。イベントハンドラは非同期で処理されますか?
5
A
答えて
6
イベントは、デフォルトで同期的に発生します。 MulticastDelegates
は非同期呼び出しをサポートするように設計されているため、イベントの呼び出しリスト内のデリゲートを非同期で呼び出すことは可能ですが、これはデフォルトの動作ではありません。私はまた、いくつかのテストをしました
2
...
Public Sub MyHandler() Handles Complete
MsgBox("My Handler - Beginning 5 second sleep")
Threading.Thread.Sleep(5000)
MsgBox("My Handler - Awoken")
End Sub
Public Sub SomeFunction()
MsgBox("Some function - Raising Event")
RaiseEvent Complete()
MsgBox("Some function - After Event")
End Sub
出力:
一部機能 - 上げるイベント
マイハンドラ - 以降5秒スリープ
マイハンドラ - 目覚め
いくつかの機能 - 後イベント
関連する問題
- 1. 同期非同期入力の処理
- 2. Couchbase非同期バッチエラー処理
- 3. C#スレッド非同期処理
- 4. C#非同期処理オペレーションエラー
- 5. ボトルの非同期処理
- 6. Tomcat 7非同期処理
- 7. HttpServletへのHTTPリクエストは非同期で処理されますか
- 8. Linuxで非同期信号はどのように処理されますか?
- 9. Netty ClosedChannelException非同期処理で受信メッセージが処理された場合
- 10. 非同期処理がまだ
- 11. FirebaseでAndroidの非同期処理を処理する方法
- 12. C#での非同期画像処理
- 13. F#での非同期例外処理
- 14. ScriptManagerでの非同期エラーメッセージの処理
- 15. jQueryでの非同期イベントの処理
- 16. ES6での非同期要求処理
- 17. どのようにC#は非同期処理を処理しますか?
- 18. EHsc vc EHa(非同期と非同期の例外処理)
- 19. 同期から非同期のJMSメッセージ処理への変更
- 20. 非同期イベントハンドラから例外をキャッチ
- 21. AngularJSのHttpリクエストは同期処理されていますか?
- 22. ラフティングリーダーはクライアント要求を同期または非同期で処理しますか?いかだで
- 23. F#非同期Webリクエスト、例外処理
- 24. ASP.NET MVCの非同期リクエストの処理
- 25. WCF非同期サーバー側の処理
- 26. JavaScriptの非同期ループ処理
- 27. 春の統合非同期エラー処理
- 28. C#非同期処理とマルチスレッドエラー
- 29. 非同期JavaScript Chromeコンソールエラーの処理
- 30. モノラル非同期例外処理