C#里的beginInvoke
时间: 2024-01-21 09:04:02 浏览: 68
c# Invoke和BeginInvoke 区别分析
5星 · 资源好评率100%
在C#中,beginInvoke是一个用于异步调用方法的方法。它允许在后台线程上执行指定的方法,而不会阻塞主线程。引用\[2\]中的代码示例展示了如何使用beginInvoke方法。在这个示例中,当点击button2时,会创建一个新的线程beginInvokeThread,并在该线程上执行StartMethod方法。在StartMethod方法中,会先输出"3...",然后通过this.BeginInvoke方法异步调用beginInvokeMethod方法。beginInvokeMethod方法会在主线程上执行,并输出"4..."。最后,输出"5..."。需要注意的是,Control的Invoke和BeginInvoke的委托方法是在主线程,即UI线程上执行的。如果委托方法需要执行耗时操作并更新界面,应该避免在UI线程上调用Control.Invoke和Control.BeginInvoke,以免造成界面的假死。\[3\]
#### 引用[.reference_title]
- *1* *2* *3* [C#中BeginInvoke和Invoke](https://blog.csdn.net/weixin_44172770/article/details/123741656)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文