仅仅尝试使用Interlocked.Increment(ref threads),它就挂了我的游戏。

public static int threads;

...

Interlocked.Increment(ref threads);

也使用System.Threads

我已经将其移入主线程并移出了主线程,似乎无法使其在任何地方都能正常工作。这是Unity造成的吗?

最佳答案

.Net Interlocked.Increment实际上并没有锁定任何东西(至少它绝对不会锁定int);它只能确保增量是原子发生的。

这实际上不是引起问题的更改,或者您已将另一个Interlocked导入到您的 namespace 中。

10-06 15:59