gpt4 book ai didi

c# - 在 WPF/C# 中按需挂起/重启线程

转载 作者:太空宇宙 更新时间:2023-11-03 12:46:36 26 4
gpt4 key购买 nike

在 WPF 应用程序中,我有一个线程池(每个线程都是对返回 base64 图像的 REST 网络服务的调用),我想非常精确地“控制”它。

这些线程是异步的,我希望能够暂停/恢复它们中的每一个。

  • 我想使用 CancellationToken 之类的东西不是一个选项,因为每个线程都只是在执行调用并等待答案。

  • 我刚刚看到 Thread => Suspend 和 Restart 类中的内容已过时/弃用。

那么如果有人有什么建议呢?

提前致谢。

最佳答案

因此,由于线程的性质,您正在寻找的线程控制类型并不完全可行。线程执行由操作系统及其调度程序排队。这意味着您无法控制线程何时主动运行。然而,纤程类似于线程,区别在于应用程序负责调度和切换线程。纤程被理想化为单声道中的协程,并且 win32 库对它们有一些支持。不过,.net 框架并未为其提供太多支持。

社区中的一些人一直在询问有关纤维的问题,但他们的搜索大多没有结果。 SO post

This答案可能会将您引向对您的旅程有帮助的方向。它提到为并行任务库创建您自己的调度程序。

我没有深入探索这个概念,因为我还不需要它,但 yield 返回计划设计似乎是一种替代方案。

关于c# - 在 WPF/C# 中按需挂起/重启线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37076822/

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