仅仅尝试使用Interlocked.Increment(ref threads)
,它就挂了我的游戏。
public static int threads;
...
Interlocked.Increment(ref threads);
也使用
System.Threads
。我已经将其移入主线程并移出了主线程,似乎无法使其在任何地方都能正常工作。这是Unity造成的吗?
最佳答案
.Net Interlocked.Increment
实际上并没有锁定任何东西(至少它绝对不会锁定int
);它只能确保增量是原子发生的。
这实际上不是引起问题的更改,或者您已将另一个Interlocked
导入到您的 namespace 中。