效果:
1.Unity支持多线程的,只要线程不关闭,就一直运行。
2.编辑器模式下,如果线程不关闭,不管是切后台,还是当前场景关闭了,该线程都一直运行。
3.记得销毁线程。
命名空间:
using System.Threading;
1.开启线程
ThreadStart childRef = new ThreadStart(ThreadTest1);
childThread = new Thread(childRef);
childThread.Start();
2。关闭线程
public void CloseThread()
{
if (childThread != null)
{
childThread.Abort();
}
}
完整代码如下:
using System.Threading;
using UnityEngine;
public class TestThread : MonoBehaviour
{
static int add_value = 1;
Thread childThread = null;
void Start()
{
CloseThread();
ThreadStart childRef = new ThreadStart(ThreadTest1);
childThread = new Thread(childRef);
childThread.Start();
}
public void ThreadTest1()
{
while (true)
{
add_value++;
print("ThreadTest1 is working:"+ add_value);
Thread.Sleep(1000);
}
}
public void CloseThread()
{
if (childThread != null)
{
childThread.Abort();
}
}
private void OnDestroy()
{
CloseThread();
}
}
这篇博客介绍了Unity引擎如何支持多线程,并展示了如何启动和关闭线程。通过`ThreadStart`和`Thread`类创建并启动线程,然后在`CloseThread`方法中使用`Abort`来终止线程。在`OnDestroy`中调用`CloseThread`确保线程资源得到释放。示例代码中展示了如何在一个无限循环中更新变量并延时。

6604

被折叠的 条评论
为什么被折叠?



