问题标签 [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 投票
9 回答
14421 浏览

data-structures - 允许有效优先级更新的优先级队列?

更新:这是我对 Hashed Timing Wheels 的实现。如果您有提高性能和并发性的想法,请告诉我。(2009 年 1 月 20 日)

更新:我通过使用Hierarchical 和 Hashed Timing Wheels解决了这个问题。(2009 年 1 月 19 日)

我正在尝试在 Java 中实现一个特殊用途的计时器,该计时器针对超时处理进行了优化。例如,用户可以注册一个带有截止期限的任务,并且计时器可以在截止期限结束时通知用户的回调方法。在大多数情况下,注册的任务会在很短的时间内完成,因此大多数任务将被取消(例如 task.cancel())或重新安排到未来(例如 task.rescheduleToLater(1, TimeUnit.SECOND)) .

我想使用这个计时器来检测空闲的套接字连接(例如,在 10 秒内没有收到消息时关闭连接)和写入超时(例如,当写入操作在 30 秒内未完成时引发异常。)在大多数情况下,不会发生超时,客户端将发送一条消息并发送响应,除非存在奇怪的网络问题..

我不能使用 java.util.Timer 或 java.util.concurrent.ScheduledThreadPoolExecutor 因为他们认为大多数任务都应该超时。如果一个任务被取消,被取消的任务被存储在它的内部堆中,直到 ScheduledThreadPoolExecutor.purge() 被调用,这是一个非常昂贵的操作。(O(NlogN)也许?)

在我在 CS 课程中学到的传统堆或优先级队列中,在许多情况下更新元素的优先级是一项昂贵的操作 (O(logN),因为它只能通过删除元素并重新插入它来实现新的优先级值。像斐波那契堆这样的堆有 O(1) 时间的 reductionKey() 和 min() 操作,但我至少需要快速 increaseKey() 和 min()(或 reductionKey() 和 max()) .

您是否知道针对此特定用例高度优化的任何数据结构?我正在考虑的一种策略是将所有任务存储在哈希表中并每秒左右迭代所有任务,但这并不是那么漂亮。

0 投票
1 回答
2808 浏览

.net - Managment Studio 和 TableAdapter 之间存储过程的执行时间差异很大

存储过程如何通过 Management Studio 在 10 秒内运行,但通过 TableAdapter 需要 15 分钟才能获得相同的输入?它是可重复的,这意味着我在每个环境中至少运行了 3 次,而 Management Studio 始终快 100 倍左右。

我正在使用 .net 2.0 和 SQL Server 2000

在 SQL Server Management 中,我是这样执行的:

在 TableAdapter 中,我使用StoredProcedure CommandTypeanddbo.uspMovesReportByRouteStep作为CommandText. 我正在从 ASP.NET 页面调用表适配器,尽管如果我也尝试在本地“预览数据”它会在 30 秒内超时。

提供存储过程是不切实际的,因为它有超过 100 行长,并且依赖于许多其他 UDF 以及同一数据库和其他数据库上的视图。

使用任何一种方法,所有其他存储过程似乎都在大约同一时间运行。这怎么可能?

0 投票
1 回答
1305 浏览

c# - .NET:由于事务超时导致异步回滚

在 C# 项目中,我在System.Transactions.Transaction. 当事务超时发生时,回滚在工作线程中执行:显然,事务使用计时器并在计时器到期时调用计时器回调( Microsoft关于此问题
的文档很少)。因此,我的事务资源中 ) 的实现是异步调用的。 IEnlistmentNotification.Rollback(...

我的问题是:我该如何处理?当然,回滚代码会更改资源的内部状态,例如通过丢弃更改。看来我必须同步对这个资源的所有访问。但是,该资源不是为线程保存而设计的。有没有人有这个问题的经验,或者是否有某种“最佳实践”?

0 投票
3 回答
3026 浏览

asp.net - 在哪里设置会话超时?

应用程序在 Application_AcquireRequestState 事件处理程序中设置 session.timeout。

在会话到期之前,会弹出通知窗口。它通过 Application_AcquireRequestState 将会话超时重置为 3 分钟(通常为 30 分钟)。

该通知为用户提供了将会话再延长 30 分钟的选项。如果用户单击是,它将通过先前的事件处理程序将会话超时重置 30 分钟。

问题是,尽管用户单击是,并且会话超时设置正确,但会话似乎在设置时间之前超时。这仅在通知后发生。

怀疑是当它到达 Application_AcquireRequestState 时,已经为此请求计算了超时。新的超时值将用于下一个请求。因此,当用户单击“是”以延长会话时,当前请求的超时时间不是 30 分钟,而是只有 3 分钟,因为通知窗口设置了超时。只有当用户发送另一个请求时,yes 才会生效。

(通知窗口有自己的计时对象)

任何人都可以验证这一点吗?或者给我一个很好的资源来解释asp.net是如何管理这个的?

谢谢!

0 投票
3 回答
408 浏览

shell - MacFUSE:保活?

如果远程主机设置为由于不活动而中断连接,有没有办法配置 MacFUSE 以保持挂载的卷处于活动状态?如果没有直接的方法来配置它,是否有办法编写脚本来完成此操作?

0 投票
2 回答
1555 浏览

jquery - JQuery超时不执行

我有一个带有 JQuery 的 js 客户端,这个 js 调用一个页面(GET HTTP)并设置超时。超时的目的是:“如果服务器没有响应就做点什么”。如果我使用 Apache Web 服务器来管理页面,则会执行超时。如果我使用 IIS 6.0,超时将被“跳过”并且页面尝试(无论如何)服务器响应。这是脚本:

//客户端

我想那是一个 IIS.. 对吗?或者我在 JQuery 代码中犯了一个错误?

最好的问候

多梅尼科

0 投票
1 回答
2492 浏览

jquery - JQuery 超时问题

我发现使用 JQuery 超时有问题,我有一个带有脚本的页面,它设置了超时并等待服务器的响应。问题是当超时必须执行时,简而言之,它“没有动作”。我认为该脚本不会中断与服务器的连接并等待服务器响应,因为在服务器端连接开启 10 秒(但超时设置为 5 秒)。当服务器在不同的域名和客户端工作时,我看到了这个问题,而当服务器和客户端在本地工作时,这个问题就不存在了。

您是否有一个想法,因为发生了此错误或如何关闭脚本连接?

和服务器代码:

最好的祝福

多梅尼科

0 投票
4 回答
309 浏览

c# - 测试 URL 时 Java 和 C# 代码的性能不同

运行以下 Java 代码时,在确定我正在测试的网页是否启动时,我得到了非常准确和一致的结果。

与 c# 中的 Java 模式最接近的匹配具有更高的误报结果(主要是由于超时 - 默认周期为 100000 毫秒)。

我在 c# 中尝试了各种模式来匹配引用的 Java 代码的有效性,但无济于事。

有任何想法吗?

0 投票
5 回答
36481 浏览

asp.net - ASP.NET MVC 和 httpRuntime executionTimeout

我想增加httpRuntime executionTimeout一个 ASP.NET MVC 应用程序的一个小节。

在常规 Web 应用程序中,您可以使用:

然而,在 ASP.NET MVC 中确实没有“文件夹”的想法,那么我将如何去做呢?

让我们假设 ASP.NET MVC 路径/Images/Upload带有一个 ImagesController 和 Upload Action。

0 投票
20 回答
472857 浏览

python - 函数调用超时

我在 Python 中调用一个函数,我知道它可能会停止并迫使我重新启动脚本。

如何调用该函数或将其包装在什么中,以便如果它花费超过 5 秒的时间,脚本将取消它并执行其他操作?