using System;
using System.Collections.Generic;
using UnityEngine;
public class ThreadHelper : MonoBehaviour
{
private List<Action> asyncQueue = new List<Action>();
private List<Action> mainQueue = new List<Action>();
public void AddThreadInQueue(Action action)
{
lock (asyncQueue)
{
asyncQueue.Add(action);
}
}
private void Update()
{
if(asyncQueue.Count>0)
{
mainQueue.Clear();
mainQueue.AddRange(asyncQueue);
asyncQueue.Clear();
}
foreach (Action action in mainQueue)
{
action.Invoke();
}
}
}
直接使用即可!