Lee*_*Lee 6 c# multithreading join detach
C#线程Detach/ Joinable函数在哪里?
在C++ 11中,这些函数可用:
thread::joinable()
thread::detach()
Run Code Online (Sandbox Code Playgroud)
但它们在.NET中找不到 - 它们在哪里?
detach您认为 .NET会做什么?.NET 没有自动存储期限。这个概念不适用。
joinable也并不真正适用,因为您可以Join任何线程,甚至Thread.Current. 如果您坚持使用 C++ 语义:
Thread someThread = ...;
bool isJoinable = Thread.Current != someThread;
Run Code Online (Sandbox Code Playgroud)
Thread对象会受到垃圾收集的影响,但无论该Thread对象是否仍然可访问,线程都会运行直至完成。不用担心这个。