问题标签 [polling]

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 投票
6 回答
6984 浏览

python - 使用 select/poll/kqueue/kevent 监视目录中的新文件

在我的应用程序中,我需要查看新文件的目录。流量非常大,每秒至少会出现数百个新文件。目前,我正在使用带有这种想法的繁忙循环:

运行分析后,我看到很多时间都花在了睡眠中,我想知道是否应该将其更改为使用轮询。

我正在尝试使用其中一个可用的类select来轮询我的目录,但我不确定它是否真的有效,或者我只是做错了。

我的目录有一个 fd:

然后我尝试了几种方法来查看目录何时更改。例如,我尝试过的一件事是:

为什么 poll() 表现得好像有更多信息要阅读?我假设它只会在目录中发生更改的情况下这样做。

我在这里尝试做的事情甚至可能吗?

如果没有,还有其他更好的选择while True: look for changes吗?

0 投票
3 回答
689 浏览

wcf - 轮询或不轮询(在 Web 服务上下文中)

我们可以使用轮询来查找来自某些来源的更新,例如连接到网络服务器的客户端。WCF 以双工合同的方式提供了一个漂亮的功能,在其中,我可以维护与客户端的连接,并随意在该连接上进行调用。办公室里的一些偷窥者正在讨论这两种解决方案的优点,我想获得关于何时最好地使用每种策略的反馈。

0 投票
1 回答
1076 浏览

wpf - WPF——如何将集合类中的事件冒泡到主窗口

我正在使用 ObjectDataProvider 调用一个带有 IObservableCollection 的类:

clsPatient 抓取数据并填充集合。它还使用计时器来轮询间隔时间重新查询数据库。

问题:如何在 clsPatient 中为 StartPoll 和 EndPoll 创建一个事件,更重要的是,如何将这些事件冒泡到我的 WPF 窗口的代码隐藏中?

0 投票
4 回答
3138 浏览

java - 从 J2ME 客户端轮询 HTTP 服务器

我的手机(客户端)上运行了一个 J2ME 应用程序,

我想打开与服务器的 HTTP 连接并不断轮询服务器上的更新信息。

执行的每个轮询都会用完 GPRS 字节,从长远来看会变得昂贵,因为 GPRS 计费是基于发送和接收的数据包。是否有使用 HTTP 协议进行轮询的字节有效方式?

我也听说过长轮询,但我不确定它是如何工作的以及它的效率如何。

实际上,首选方法是服务器告诉手机应用程序新数据已准备好使用,这样就不需要进行轮询,但是我不知道这些技术,尤其是在 J2ME 中。

0 投票
6 回答
15812 浏览

c# - 有没有办法在 C# 中仅当有东西可供阅读时才轮询套接字?

我想知道当只有一个条件(数据可供读取)满足时,是否有办法在 c# 中轮询套接字,我知道socket.Poll方法,但如果有任何数量的,这可以返回 true指定的 3 个条件返回此处指定的 true:MSDN: Socket.Poll

0 投票
3 回答
1563 浏览

c - 当 getifaddrs() 结果发生变化时,是否有通知机制?

在启动时,我的程序调用 getifaddrs() 来找出哪些网络接口可用于链路本地 IPv6 多播。尽其所能,但它不能处理在 getifaddrs() 返回后可用网络接口集发生变化的情况。

当网络接口发生变化时,操作系统是否可以通过某种方式通知我的程序,以便我可以再次调用 getifaddrs() 并更新我的列表?还是我注定每隔几秒就永远轮询一次 getifaddrs() ?

(注意:在 Windows 上,我调用 GetAdaptersAddresses() 而不是 getifaddrs(),但同样的问题也存在)

0 投票
2 回答
472 浏览

php - 民意调查和 PHP

好的,所以我想创建一个投票站点,但它不像典型的投票那样工作。

这是我希望我的操作方式:

用户注册并收到确认电子邮件一旦他们确认他们可以登录从那里他们进入一个包含多个主题但相对于选择一个主题的大型民意调查,他们将拥有 20 个左右的“令牌”,他们可以将它们分配给每个主题作为想要的。然后这些用户保存他们的投票,并将其输入数据库,然后可以在其中显示结果。这 20 个代币将每周、每月或每两周补充一次。

这是基本思想。我不是在问这是否是个好主意。我只想知道是否有一个投票插件/附加类型的东西我可以安装在我的网站上来支持这个,或者这是否必须是定制的?

该站点的其他功能将是会有一个不同的部分,用户将在其中对典型的民意调查进行投票。该民意调查将询问应将哪些主题添加到第一次主要民意调查中。

如果存在支持此功能的插件,有人可以告诉我或它。

或者,如果这是定制的。会有多激烈?我对 PHP 和 MySQL 有一个新手的了解,这是我可以做的吗?

我很感激帮助,

谢谢

0 投票
6 回答
1556 浏览

.net - 如何在不轮询的情况下通知我的 JS 客户端?

上下文: 从我的 javascript Web UI 中,我启动了一个在 .NET2.0 后端进行的长时间运行(几分钟)的操作。当长时间运行的操作并行运行时,调用会立即返回操作 ID。这些操作不是 CPU 密集型的,但会进行缓慢的网络调用。操作完成后,我想在 Web UI 中查看结果。

问题:工作完成后如何通知客户?

我考虑过的选项:

选项 1:我直接从 JS 异步启动长时间运行的操作,我希望返回值是最终结果而不是操作 ID。我的 AJAX 库处理一切,生活看起来非常轻松和整洁。问题是在服务器端线程是一个 ThreadPool 线程,我现在锁定了几分钟。即使有足够的处理能力,您也不需要太多长时间运行的并行请求来导致 ThreadPool 饿死并使整个服务器瘫痪。

选项2:使用操作ID,如果操作完成,我开始轮询服务器。但是,这是对我自己的服务器的拒绝服务攻击。此外,必须有公平的 ajax 解决方案。这不是一个独特的问题。

0 投票
1 回答
2033 浏览

python - python中轮询套接字的问题

在我开始轮询循环后,第一次迭代后打印的所有消息都要求我在终端中按 enter 以显示它。

0 投票
4 回答
42602 浏览

javascript - jQuery AJAX 轮询 JSON 响应,基于 AJAX 结果或 JSON 内容进行处理

我是一名中级 JavaScript/jQuery 程序员,因此非常感谢具体/可执行的示例。

我的项目需要使用 AJAX 轮询返回 JSON 的 URL,该 URL 包含要添加到 DOM 的内容,或指示后端仍在使用内容生成 JSON 响应的消息{“status”:“pending”} . 这个想法是,对 URL 的第一个请求会触发后端开始构建 JSON 响应(然后将其缓存),随后的调用会检查此 JSON 是否已准备好(在这种情况下已提供)。

在我的脚本中,我需要以 15 秒的间隔轮询此 URL,最多 1:30 分钟,并执行以下操作:

  • 如果 AJAX 请求导致错误,则终止脚本。
  • 如果 AJAX 请求成功,并且 JSON 内容包含{ "status" : "pending" },则继续轮询。
  • 如果 AJAX 请求成功,并且 JSON 内容包含可用内容(即除{ "status" : "pending" }之外的任何有效响应),则显示该内容,停止轮询并终止脚本。

我尝试了几种方法,但效果有限,但我感觉它们都比它们需要的更混乱。这是我成功使用的一个骨架函数,它一次成功地发出一个 AJAX 请求,如果我从 JSON 响应中获取可用内容,它就可以完成它的工作:

但是,除非它接收到包含可用内容的有效 JSON 响应,否则此函数当前什么都不做。

我不确定在只是评论的行上该怎么做。我怀疑另一个函数应该处理轮询,并_根据需要调用 ajax request(),但我不知道 ajax _request() 将其结果传回轮询函数以便它可以适当响应的最优雅方式。

很感谢任何形式的帮助!如果我能提供更多信息,请告诉我。谢谢!