gpt4 book ai didi

winforms - winforms 事件处理程序是否与调用者发生在同一线程上?

转载 作者:行者123 更新时间:2023-12-03 05:10:07 29 4
gpt4 key购买 nike

简单的问题,虽然办公室里似乎没有人知道,而且我找不到一个好的方法来问谷歌这个问题。在 winforms 中,如果您有一个处理事件的函数(在本例中是在 focusLost 上),那么该函数是否与触发该事件的函数发生在同一线程上?

因此,如果我有一个具有焦点的文本框,当前正在 UI 线程上运行,并且我更改焦点,那么 UI 线程会运行我的函数吗?

最佳答案

是的,UI 线程将执行 UI 事件处理程序。

通常,在 Windows 编程中,您不应该接触其他线程上的 UI 组件。 Windows 窗体设计为通过单线程工作。如果您需要进行繁重的工作,否则可能会卡住 UI 线程,您可以生成一个新线程来完成工作,然后将更改推送到 UI 线程。

您可以使用SynchronizationContext.Current将工作发布到 UI 线程。 BackgroundWorker这也很方便。

关于winforms - winforms 事件处理程序是否与调用者发生在同一线程上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11004789/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com