如何将 ISynchronizeInvoke 设置到主线程 (SynchronizationContext.Current)?

问题描述 投票:0回答:1

我想使用Unity内部的

System.Timers.Timer
,但是Unity有很多(很多)功能只在主线程上运行。但是,它使用
ISynchronizeInvoke
属性来确定计时器在哪个线程上调用其操作,并且几乎没有关于如何强制它在主线程上调用的信息。

我尝试将其设置为

SynchronizationContext.Current
,但这显然不起作用。我也只是尝试过
SynchronizationContext.Current.Post
但 Unity 中没有调用它,或者也许我真的不明白如何使用它。

multithreading unity-game-engine synchronization
1个回答
0
投票

虽然我没有研究过 ISynchroniszeInvoke,但经过简短的讨论,Casey 和我已经确定了原因以及合理理解问题所需的所有好处

我缺乏知识,毫不奇怪地让我去谷歌,在那里我发现了github上的东西,它至少在正确的范围内。虽然这在技术上不是完整的答案,但它显然提供了一些缺失的信息,并可能导致其他同样缺乏信息的人找到相同的信息。

© www.soinside.com 2019 - 2024. All rights reserved.