关于调试的Redis StackExchange.Redis.RedisTimeoutException

时间:2017-10-27 12:59:11

标签: stackexchange.redis

为什么我在Visual Studio中调试时总是得到异常StackExchange.Redis.RedisTimeoutException如果我强制在立即窗口中使用redis或尝试将调试行移动到我使用redis的行。

如果我使用步入或步骤,我手动改变,每个人都可以正常工作,并且redis Respons。

2 个答案:

答案 0 :(得分:1)

我认为这是由于以下原因造成的:

1 /默认情况下,StackExchange.Redis的超时时间较短

2 /调试导致线程被挂起

命中断点,而StackExchange.Redis仍在计时时间(计时器未暂停)

解决方案是根据以下更改超时配置 Debugger.IsAttached

如果您检测到已连接调试器,请将configuration的syncTimeout,connectTimeout更改为更高的数字

答案 1 :(得分:0)

这是我能够看到的。在这种情况下,qu(队列未发送)和队列都是3,这表示该命令甚至没有发送到Redis,这就是您在客户端获得超时的原因。

'mgr: ExecuteSelect, err: never, queue: 3, qu: 3, qs: 0, qc: 0, wr: 0, wq: 1, in: 0, ar: 0