有没有办法以最简单的形式在javascript中实现线程概念。 情况是,在我的应用程序中,如果用户试图点击一件事,任务可能会花费很多时间,所以我想让用户做其他事情,如果任务完成,他可以得到结果。 所以,如果有人对此有任何想法,请回答。
提前致谢。
被修改
确切的情况是用户点击启动进程,该进程需要在服务器端执行,并且可能需要一些时间。所以我将每隔5或10秒ping一次服务器以检查是否已完成。意味着用户可以做任何他想做的事。
答案 0 :(得分:1)
使用网络工作者:
Web worker是一个在后台运行的JavaScript, 独立于其他脚本,而不影响其性能 这页纸。你可以继续做你想做的事:点击, 选择事物等,而web工作人员在后台运行。
来自http://www.w3schools.com/html/html5_webworkers.asp
你可以在这里看到一个例子:
http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_webworker
答案 1 :(得分:0)
JavaScript不是多线程的,尽管有类似于使用asyc
或setTimout
或setInterval
的情况,但这些是JavaScript中与...无关的功能多线程应用程序。
但HTML5
中的Worker概念允许您在后台执行某些工作。
请注意,目前并非所有浏览器都支持此功能。