在我的 SignalR2 集线器中,我添加了将从客户端调用的异步方法 StartMyTask() 以及 OnConnected() 方法。但是,每当 OnConnected 执行时,它永远不会连接到集线器(或返回 base.OnConnected())永远不会被击中:
中心:
public override Task OnConnected()
{
StartMyTask().Wait(); // add stuff to db here
return base.OnConnected();
}
static async Task StartMyTask()
{
await Task.Run(() =>
{
Thread.Sleep(10);
});
}
- 为什么我无法连接?当我让 StartMyTask 不是一项任务时,它就可以工作。
- 我假设如果我不想等到数据库写入,我会删除 Wait() - 对吗?如果连接发生并且数据库在之后写入,这会导致任何问题吗?