问题标签 [timeout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
698 浏览

c# - Web 服务不关心 Timeout 属性

我正在为LyricWiki.org使用自动创建的(使用 wsdl.exe 和基于 GUI 的“添加 Web 引用”命令)Web 服务。然而,由于我的互联网连接最近很糟糕,它需要很长时间才能完成,这让我很恼火。

我试图通过使用 .Timeout 属性使其在 2000 毫秒内超时,但它仍然挂起。我也尝试使用此页面中的 CallWithTimeout 函数,但不行。也尝试过命令的异步版本,但我想在提到的时间后取消它。

有什么建议么?过去一个小时一直在搜索 StackOverflow,但我还没有找到解决方案:(

0 投票
1 回答
3415 浏览

wcf - 诱导 WCF openTimeout closeTimeout

我希望测试和观察 WCF 客户端和服务主机之间的超时行为。对于receiveTimeout 和sendTimeout,可能很容易传输需要几秒钟以上的大字节流并将这些超时属性设置为低得离谱的值。

但是,由于除了调用 serviceProxy.Open() 或 .Close() 方法之外没有什么可以做的,我在想什么是延迟打开和关闭 WCF 连接、跨越阈值的好方法openTimeout 和 closeTimeout?

0 投票
3 回答
1185 浏览

sql-server - sys.dm_exec_query_optimizer_info“超时”记录表示什么?

在调查一些客户端机器失去与 SQL Server 2005 的连接时,我在网上遇到了以下代码行:

选择 * FROM sys.dm_exec_query_optimizer_info WHERE counter = 'timeout'

当我在我们的服务器上运行此查询时 - 我们得到以下结果:

计数器 - 发生 - 值

超时 - 9100 - 1

据我所知,这意味着查询优化器在尝试优化针对我们服务器运行的查询时超时 - 9100 次。但是,我们在 SQL Server 错误日志中没有看到任何超时错误,我们的最终用户也没有报告任何特定于超时的错误。

谁能告诉我这个“发生”的数量是什么意思?这是我们应该关注的问题吗?

0 投票
1 回答
261 浏览

windows - 如何防止 .NET 服务在等待依赖服务时超时

我有一个依赖于 MSMQ 服务的基于 C# 的服务。在某些情况下,MSMQ 服务需要很长时间才能启动,显然会导致 C# 服务超时。如何以编程方式解决此问题?

编辑:看来我正在处理的错误报告不正确,该服务确实最终启动了。我为混乱道歉

0 投票
4 回答
7700 浏览

shell - 从 shell 写入 fifo/pipe,超时

我有一对通过命名管道进行通信的 shell 程序。阅读器在启动时创建管道,并在退出时将其删除。

有时,写入者会在读取器停止读取和移除管道之间尝试写入管道。

发生这种情况时,作家将永远挂起,试图打开管道进行写作。

有没有一种干净的方法可以让它超时,这样它就不会一直挂起,直到被手动杀死?我知道我能做到

但这有点恶心。是否有内置的 shell 或命令可以更干净地执行此操作(不破坏 C 编译器)?

0 投票
2 回答
22457 浏览

asp.net - ASP.Net 会话超时检测:Session.IsNewSession 和 SessionCookie 检测是最好的方法吗?

当我的 ASP.Net 会话超时(以及表单身份验证)并且我尝试点击一个页面时,我会自动重定向到我的默认 login.aspx 页面。

在页面加载之前,我需要确定这是否是超时情况,如果是 - 重定向到 timeout.aspx。

下面的文章指定如果 IsNewSession 为真,并且存在 sessionID cookie - 那么您将遇到超时情况。

但是在我的测试中,我遇到了超时并尝试再次登录的情况,并且 IsNewSession 等于 true 并且 sessionId cookie 仍然存在(因为它会保留整个浏览器会话),因此它说我已经计时- 当我试图重新登录时再次退出。

有没有更好的方法来完成这一切?

技术在这里这里描述。

在我的“global.asax”文件中,我有:

0 投票
6 回答
8516 浏览

php - 如何通过 phpmyadmin 导入非常大的查询?

如果我的主机不允许我将文件直接上传到我的 mysql 文件夹,我只能通过 phpmyadmin 这样做?除了其本机导入功能之外还有其他选择,以便在上传大约 8mb 的查询时我的连接不会超时?

0 投票
2 回答
4681 浏览

perl - 如何在 Perl 中实现带有超时读取的“tail -f”?

我的问题是如何立即处理输入而不是等待换行符的对立面。我想继续阅读不断增长的日志文件,但在文件没有增长指定的秒数后停止。

我在 CPAN 找到了Sys::AlarmCall,并尝试如下所示,但运行时它不会超时:

我猜这与与 ' <>' 运算符相关的自动魔法有关。但我不确定如何重写代码。我可以只显式打开一个文件(而不是任意数量的文件),如果没有指定文件,则默认为标准输入 - 我只希望将它与一个文件名一起使用。

(该脚本为读取的每一行生成一个点,每读取 50 行生成一个换行符,并每 25 行点输出一个时间戳。我用它来跟踪长时间运行的构建的进度。当前的化身由tail -f, 但是当此脚本执行时,它不会退出,主要是因为它永远不会再获得任何输入来写入现在不存在的进度跟踪器。“最后”行的东西是我通常处理的日志文件中的一个标记;我想删除它. 超时将按分钟计算,而不是亚秒级。)

有什么建议么?(最好除了'下车并用C编码'!)


File::Tail似乎很好地满足了我的要求。修改后的代码是:

有改进的空间;特别是,超时应该是可配置的。但是,它似乎可以按我的意愿工作。需要更多的实验和调整。

似乎 $tail->read() 函数一次读取一行;这在 POD 中并不完全明显。


可悲的是,在进一步的实际使用中,我使用 File::Tail 代码的方式似乎并没有按照我需要的方式工作。特别是,一旦它停在一个文件上,它似乎就不会再次恢复。我没有花时间试图找出问题所在,而是选择了替代方案 - 自己用 C 编写代码。不到 2 小时就得到了一个带有我想要添加的花里胡哨的版本。除了调试(我使用的)File::Tail 之外,我不确定我是否能够尽快将它们放入 Perl。一个奇怪的地方:我将我的代码设置为使用 4096 字节的缓冲区;我发现我监控的构建过程中有一行超过 5000 字节长。嗯,代码仍然使用 4096 字节的缓冲区,但会为这样的超长行发出一个点。对我的目的来说已经足够好了。

0 投票
6 回答
38294 浏览

sql - SQL Server 简单插入语句超时

我有一个 6 列的简单表格。大多数情况下,任何插入语句都可以正常工作,但有时我会遇到 DB Timeout 异常:Timeout expired。在操作完成之前超时时间已过或服务器没有响应。该语句已终止。

超时设置为 10 秒。

我应该提到我正在使用 NHibernate,并且该语句还在插入本身之后包含一个“select SCOPE_IDENTITY()”。

我的想法是该表被锁定或其他什么,但当时该表上没有其他语句运行。

所有的插入都非常简单,在 sql profiler 中一切看起来都很正常,表没有索引,只有 PK(页面填充度:98.57 %)。

关于我应该寻找什么的任何想法?

谢谢。

0 投票
2 回答
3742 浏览

sql - 使用两个包含语句的 LINQ to SQL 查询失败

我有两张桌子,DH_MASTERDH_ALIASDH_MASTER包含有关人员的信息,包括他们的姓名。 DH_ALIAS包含有关此人的 AKA 记录。这些表由Operator作为主键的字段链接DH_MASTER

用户希望通过存储在其中的名称进行搜索,DH_MASTER并通过他们所有已知的别名进行搜索。如果在其中一个中找到任何匹配项,DH_MASTER则应返回DH_ALIAS该实体。DH_MASTER

我创建了下面的查询,它应该给出我描述的结果(返回orDH_MASTER的任何行)。DH_MASTER.Name == nameDH_MASTER.DH_ALIAs(n).Name == name

如果我只使用其中.Contains一条线,它就可以正常工作。我使用哪一个并不重要。但是当我尝试同时使用 BOTH 时执行失败。

LinqToSQL 查询计算为以下 SQL 代码(如 SQL Server 查询可视化工具中所示)

编辑:选中查询可视化工具中的“显示原始”框会按预期显示参数化查询,因此应忽略下面的此文本块。

我不知道这是否是一个问题,但 .Contains 评估为一个 `LIKE` 表达式(这是我期望发生的),但参数没有封装在撇号中。

有趣的是,如果我将 SQL 查询复制/粘贴到 SQL 2005 查询分析器中并在LIKE参数周围添加撇号,它运行得很好。事实上,即使有超过 200 万行,它也快如闪电(眨眼间)。

但是当 LINQ 查询运行时,Web 应用程序锁定了大约 31 秒,然后它最终在 gv.DataBind 上出现此错误并失败: Exception has been thrown by the target of an invocation.

有了这个内部异常: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

有谁知道为什么会发生这种情况以及如何解决这种行为?这让我抓狂,因为 LinqToSql 生成的 SQL 在查询分析器中运行良好!

更新:

我已经根据答案中的技术重构了我的代码。这行得通!