我正在尝试了解如何使用IOwinRequest.CallCancelled CancellationToken IOwinRequest。我假设在请求变为无效时,令牌会被标记(对于以下情况):
在所有这些情况下,似乎永远不会标记CallCancelled请求。为什么呢?
编辑:我在代码中发现错误,我的第一点“处理WebApp.Start返回的对象”现在可以正常工作。处置/取消的客户端请求仍然不会触发服务器请求令牌来标记。对于某些背景,我正在尝试实现长轮询,其中服务器挂起请求线程,直到某些数据到达返回客户端,或者请求被取消。为了实现这一点,如果标记了取消令牌,我的挂起循环将会失败。如果没有标记,请求线程将永远不会结束,除非有东西要返回。由于永远不会标记令牌,因此我的服务器最终可能会收到永无止境的无限数量的请求。