level 9
掩っ伤╄King
楼主
[博客园也提问了] https://q.cnblogs.com/q/103402/
需求是这样的:
客户端a 向服务器发起一次请求 服务器hold请求 不返回
等待客户端b 发起请求后, 这个时候 a 的请求就可以返回了
这个是我这边大致的实现代码

然后报错

有没有大神知道为什么会这样, 有没有别的办法达到这个效果吗
把GetString方法改成这样好像也能达到预期, 但是不知道有没有Bug会不会很耗性能, 其实我更想知道的是前面为什么会报错, 以及解决办法
public async Task<string> GetString()
{
while (!source.IsCancellationRequested)
{
await Task.Delay(1 * 1000);
}
//await Task.Delay(10 * 1000, source.Token); return "";
}
求大神指点
2018年01月25日 14点01分
1
需求是这样的:
客户端a 向服务器发起一次请求 服务器hold请求 不返回
等待客户端b 发起请求后, 这个时候 a 的请求就可以返回了
这个是我这边大致的实现代码

然后报错
有没有大神知道为什么会这样, 有没有别的办法达到这个效果吗把GetString方法改成这样好像也能达到预期, 但是不知道有没有Bug会不会很耗性能, 其实我更想知道的是前面为什么会报错, 以及解决办法
public async Task<string> GetString()
{
while (!source.IsCancellationRequested)
{
await Task.Delay(1 * 1000);
}
//await Task.Delay(10 * 1000, source.Token); return "";
}
求大神指点