我在c#代码中创建了一个名为ZipFolders的函数。事实上,我是从Unity按钮调用它,当它按下时尝试在目录中压缩文件夹。因为在同一时间我想做其他事情,我试图在新线程中调用该函数。我的问题是如何检查该线程是否正在运行或已停止。我的代码
onGUI():
if (GUI.Button (new Rect (390, 250, 100, 50), "ZIP_FILES")) {
Thread thread = new Thread(new ThreadStart(zipFile));
thread.Start();
}
我希望在更新函数中检查线程每次运行或已停止。我怎么能这样做?
答案 0 :(得分:1)
You can use thread.ThreadState
property
EDIT:
You can do like this;
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 ....
}
}
}