gpt4 book ai didi

c# - 异步调用 - 是否需要 EndInvoke?

转载 作者:太空狗 更新时间:2023-10-29 21:02:48 26 4
gpt4 key购买 nike

<分区>

Possible Duplicates:
Must every BeginInvoke be followed by an EndInvoke?
Is EndInvoke() optional, sort-of optional, or definitely not optional?

我有一个多线程应用程序,其中一个辅助线程需要每隔几分钟获取一些代码在主线程上执行一次。没有任何返回值,第二个线程不关心它是否引发任何异常或运行失败。

到目前为止,我一直在让它通过 Form.Invoke 运行代码,但它有时会比平时花费更长的时间(几秒钟)并阻塞线程直到它完成。我需要第二个线程能够继续执行而不会停顿几秒钟。

BeginInvoke 听起来可以很好地完成工作,但我真的没有任何地方可以调用 EndInvoke,因为我不想等待它或者得到一个返回值。考虑到被调用的代码涉及一堆 native 调用,我不确定不使用 EndInvoke 是否是个好主意。

我是否需要调用 EndInvoke,或者是否有其他方法可以让代码在主窗体线程上异步运行,而我应该改用这种方法?

谢谢 =)

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