0

我编写了一个行为如下的 Adob​​e AIR 应用程序:

用户登录并使用 setTimeout 创建一个永久循环。此循环执行 HTTP 请求,比较返回到全局变量的 json md5 字符串。如果这两个值不同,则用新内容更新 dom。当用户执行其他操作(例如发送回复或删除消息)时,将执行静默更新,这会“暂停”循环。它基本上就像一个简单的电子邮件客户端。

我这样做的方式不可靠并导致内存泄漏。我计划从头开始重写它,我不想最终陷入和现在一样的境地。如果有人可以给我他们将如何做的例子或给我任何建议,将不胜感激。提前致谢!

4

1 回答 1

0

你不应该经常轮询,而是使用一种称为“长轮询”或“COMET”的技术。基本上,您发送一个请求,该请求将保持打开状态,直到由于更新数据等或超时而有响应。收到一些响应后,您立即发送一个新请求。

这节省了大量带宽和服务器负载,因为它大大减少了发送的请求数量。

于 2011-02-16T22:43:08.683 回答