想创建线程放游戏逻辑

各位大佬有什么好办法没,一直未能实现。要是能使用cocos creator + TS实现用线程计算逻辑就好了

加载大型资源/网络请求用异步就行了。游戏业务逻辑?
开线程也要同步啊,多线程编程很麻烦。
ts有没有真正的多线程?不了解 :13:

如果只是纯数据计算, 不需要依赖cc 的component 的话好搞,但是将数据从线程取回到主线程这个处理不好, 性能比单线程还差

提供一个思路:
计算逻辑放到 promise 走异步,开始时间和结束时间比对,如果计算耗时超出可以 await 下一帧。每帧只分配很短的时间给它。这样单帧比较重的计算逻辑可以分配到多帧去。记住,自己要管理好中断和取消。

可以参考AsyncGenerator,从别人分析claude code源码学到的奇怪知识,和promise类似,但比promise有个优点, 可以随时通过 generator.return()generator.throw() 终止任务。