Loom代码不多,只有168行, 然而却具备了子线程运行Action, 子线程与主线程交互的能力!
public static Thread RunAsync(Action a)
public static void QueueOnMainThread(Action action)
public static void QueueOnMainThread(Action action, float time)
首先Loom类继承自MonoBehaviour,第一次使用静态的Loom.Current时,就会判断,是否初始化(其实就是将Loom 挂载到 一个自己创建的GameObject上),这样,QueueOnMainThread放进来的action就可以在每一帧回调的Update方法进行action调用。
RunAsync用线程池,运行在子线程中。 使用的时候, 当子线程的工作完成后, 可以在后面加一句Loom.QueueOnMainThread()实现线程切换!
Loom是一款轻量级线程管理工具,仅168行代码,具备子线程运行及主线程交互能力。通过RunAsync方法可在子线程执行任务,并利用QueueOnMainThread方法实现结果返回至主线程。
692

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



