我使用 signalR wiki 中提到的 OWIN 东西自托管一个 signalR 集线器。
每 20 秒,我希望它向“时钟”组中的所有成员广播当前时间。我的集线器中有一个名为 UpdateClock 的方法来处理广播。
但是,要让这个计时器运行并实际广播,“最聪明”的方法是什么?
在我看来,我需要在托管集线器的服务中设置一个计时器,并让它创建到集线器的连接并调用命令。对于很少的功能来说,这似乎是很多工作。是否可以直接在集线器类中执行此操作,因此我不必先创建连接?
到目前为止,这就是我所做的,我希望它更简单:
var signalConnection = new HubConnection(_signalREndPoint);
var hubProxy = signalConnection.CreateHubProxy(_signalRHubName);
signalConnection.Start().Wait();
hubProxy.Invoke(UpdateClock);
signalConnection.Stop();