我在 C# 代码中创建了一个名为 ZipFolders 的函数。事实上,我是从 Unity 按钮调用它的,当它按下时尝试将文件夹压缩到一个目录中。由于同时我想做一些其他事情,所以我尝试在新线程中调用该函数。我的问题是如何检查该线程是正在运行还是已停止。我的代码
onGUI():
if (GUI.Button (new Rect (390, 250, 100, 50), "ZIP_FILES")) {
Thread thread = new Thread(new ThreadStart(zipFile));
thread.Start();
}
我希望在更新函数中检查线程每次运行或停止的时间。我该怎么做?
最佳答案
您可以使用thread.ThreadState
属性
编辑:
你可以这样做;
public class YourClass
{
private Thread _thread;
private void YourMethod()
{
if (GUI.Button (new Rect (390, 250, 100, 50), "ZIP_FILES")) {
_thread = new Thread(new ThreadStart(zipFile));
_thread.Start();
}
}
private void YourAnotherMethod()
{
if (_thread.ThreadState.Equals(ThreadState.Running))
{
//Do ....
}
}
}
关于c# - 在c#中检查线程是否正在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34063612/