gpt4 book ai didi

c# - C# 和 .net 中的 ExitThread(ExitCode) 和 GetExitCodeThread 等价物是什么?

转载 作者:太空狗 更新时间:2023-10-30 00:45:22 28 4
gpt4 key购买 nike

阅读 VS2008 帮助文件后,我发现退出线程(在 .net 中)的干净方法是使用返回语句(在 C# 中)或让线程到达方法的末尾。

但是,我还没有找到允许我设置线程退出代码的方法或属性,也没有找到检索它的方法(因为它是使用 Win32 API 完成的)。因此,问题是,如何使用 C# 和 .net 执行此操作?

谢谢你的帮助,

约翰。

最佳答案

不公开底层 Win32 线程原语的原因是为了防止托管代码依赖它们。 CLR 团队一直致力于优化线程使用的方法,其中不包括关于 1:1 托管:非托管线程映射的保证(例如,参见 this MSDN page 上的“注意”)。如果您确实想这样做,则需要设置使用 Win32 GetCurrentThread() 中的非托管线程句柄的 P/Invoke 包装器,或者使用自定义主机自己连接到线程映射进程。我也不推荐,除非您绝对必须与使用线程退出代码且不受托管代码感知的东西互操作。如果您可以全部托管(或使用 Task Parallel Library 从裸线程抽象出一个级别),请想出另一种走私状态信息的方法。

关于c# - C# 和 .net 中的 ExitThread(ExitCode) 和 GetExitCodeThread 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5628908/

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