javascript中的多线程

时间:2012-05-06 06:54:32

标签: javascript ajax multithreading json

有没有办法在Javascript中实现多线程执行。 我正在我的应用程序中实现分页,目标是用户的最短等待时间。我不想一次性将所有数据带到客户端,也不想在点击的每个“下一个/上一个”按钮上创建服务器以及数据库命中。 所以我希望浏览器创建请求并更新我的数据列表,而前端用户还没有到达最后一页。

如果有人实施了此功能,请建议我。

4 个答案:

答案 0 :(得分:3)

你可以使用setInterval和setTimeOut函数来获得多线程效果,但这不是真正的多线程,你可以阅读很好的讨论here

答案 1 :(得分:1)

您可以使用计时器(setTimeout)来模拟JS中的异步。

时运行定时事件
  • 到达计时器
  • 当JS没有做任何事情时

因此,使用setTimeout在执行中创建“间隙”允许执行其他“等待中的代码”。它仍然是单线程的,但它喜欢“切线”

Here's a sample

答案 2 :(得分:1)

您可以考虑使用无限滚动技术。有许多插件可以促进这一点,包括Paul Irish's Infinite Scroll

这与Twitter等网站使用的技术相同,因此当用户向下滚动时页面会更新,从而为用户创建无缝的用户体验并消除延迟。

答案 3 :(得分:1)

通过使用Concurrent.Thread JavaScript库非常容易,它是免费的开源软件库。无需SetInterval或SetTimeout。

您可以从此处下载:http://sourceforge.net/apps/mediawiki/jsthread/index.php?title=Main_Page

可以在此处找到解释库使用的教程:http://www.infoq.com/articles/js_multithread