Loom代碼很少,只有168行, 然而卻具有了子線程運行Action, 子線程與主線程交互的能力!線程
public static Thread RunAsync(Action a)繼承
public static void QueueOnMainThread(Action action)io
public static void QueueOnMainThread(Action action, float time)date
首先Loom類繼承自MonoBehaviour,第一次使用靜態的Loom.Current時,就會判斷,是否初始化(其實就是將Loom 掛載到 一個本身建立的GameObject上),這樣,QueueOnMainThread放進來的action就能夠在每一幀回調的Update方法進行action調用。線程池
RunAsync用線程池,運行在子線程中。 使用的時候, 當子線程的工做完成後, 能夠在後面加一句Loom.QueueOnMainThread()實現線程切換!float