社区
JavaScript
帖子详情
如何在js中实现多线程功能
esunaly
2016-11-10 11:10:58
请教各路大神,我遇到一个问题,就是js中我们需要批量导入一批数据对这批数据进行操作。代码类似这样for(var i=0;i<10000;i++){......极其复杂耗时间的操作,并且不能异步,只能同步} 这样的话性能特别低,想请教各路大神如何解决。现在我想到的是java中的多线程。但是并不知道在js里面怎样实现多线程的功能。望赐教
...全文
1816
6
打赏
收藏
如何在js中实现多线程功能
请教各路大神,我遇到一个问题,就是js中我们需要批量导入一批数据对这批数据进行操作。代码类似这样for(var i=0;i<10000;i++){......极其复杂耗时间的操作,并且不能异步,只能同步} 这样的话性能特别低,想请教各路大神如何解决。现在我想到的是java中的多线程。但是并不知道在js里面怎样实现多线程的功能。望赐教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
未知数
2016-11-15
打赏
举报
回复
html5支持js开线程,你搜索一下js worker,不过这是宿主环境提供的,不是js原生能力。现代浏览器中可以使用woker var worker = new Worker('work.js'); worker.onmessage = function (event) {}; 新开的线程不能操作dom,只能用于计算.work.js中通过postMessage与主线程通信
esunaly
2016-11-14
打赏
举报
回复
aaaaaaaaaaa
当作看不见
2016-11-10
打赏
举报
回复
其实js的异步 就是开辟一个新的线程。和java的多线程机制是一样的 ,不过js吧线程细节给屏蔽掉了。理解函数回调的概连,处理多线程任务比java 更方便。不过js 确实不太适合高cpu的程序,比较适合高并发
Go 旅城通票
2016-11-10
打赏
举报
回复
js没有线程,只能居于回调,你觉得浏览器假死体验不要,可以用计时器来一个一个执行任务 ==>
for循环遍历如何延时执行
当作看不见
2016-11-10
打赏
举报
回复
js单线程的。 解决方法就是异步 回掉 函数。
david___
2016-11-10
打赏
举报
回复
setTimeout?
concurrent-thread.
js
:为单
线
程JavaScript
实现
多
线
程并发的
功能
,语意上参考Java
实现
,提供getStatesleepjoin等API,并提供
线
程间通信的
功能
,依赖ES6语法,基于Promise和Async函数
实现
,而需要Babel编译才能运行
并发
线
程.
js
为单
线
程JavaScript
实现
多
线
程并发的
功能
,语意上参考Java
实现
,提供getState / sleep / join等API,并提供
线
程间通信的
功能
,依赖ES6语法,基于Promise和Async函数
实现
,故需要Babel编译才能运行。JavaScrpt本来就是单
线
程的,所以这只是在API的纵向
实现
了模拟,在内置的介绍
中
,每条所谓的
线
程其实就是普通的异步函数,并在此基础上
实现
不同
线
程的协调配合 何时使用 当工程需要让两个函数在执行上不互相干扰时,同时也不希望它们会会成为主
线
程,同时,这两个函数还需要
实现
类似并发多
线
程之间的协调需求的时候,你可以使用这个并发模拟库,这种这种应用场景很少(扎心了呀) 。 原料药 Submit (function,[namespace]) :接收一个函数,普通函数或Async函数异步,并异步执行,
线
程 sleep(ms) :
线
程Hiber
node
js
中
实现
sleep
功能
实例
node
js
最让人不爽的就是其单
线
程特性,很多事情没法做,对CPU密集型的场景,性能也不够强劲。很长一段时间,我想在javascript语言框架下寻求一些解决方案,解决无法操作
线
程、性能差的问题。曾经最让我印象深刻的方案是fibers,不过fibers也好,其他方案也好,在
线
程操作上还是很别扭,太过依赖辅助
线
程,本末倒置;就fiber而言,javascript固有的低性能问题并不能解决;最别扭的是在javascript语言框架下,
线
程间的消息传递常常很受限制,经常无法真正地共享对象。 node
js
的addon方式无疑是极好的,具有极强的灵活性、完备的
功能
和原生代码的性能。简单说就是让nodej
wokerOfWeb.zip
JavaScript的多
线
程使用简单例子,其
中
downloadFileWorker.
js
和index.html是
实现
了页面显示,另一条
线
程执行下载图片的
功能
。前后端分离,故无法正常使用,此处只有前端,仅供参考。
JavaScript如何
实现
多
线
程?
今天看到一道面试题,问
js
如何
实现
多
线
程?下面来总结一下: 我们都知道
JS
是一种单
线
程语言,即使是一些异步的事件也是在
JS
的主
线
程上运行的。像setTimeout、ajax的异步请求,或者是dom元素的一些事件,都是在
JS
主
线
程执行的,这些操作并没有在浏览器
中
开辟新的
线
程去执行,而是当这些异步操作被操作时或者是被触发时才进入事件队列,然后在
JS
主
线
程
中
开始运行。 首先说一下浏览器的
线
程,浏览器
中
主...
JS
是如何
实现
多
线
程的
今天看到一道面试题,问
js
如何
实现
多
线
程?下面来总结一下: 因为
JS
是一种单
线
程语言,即使是一些异步的事件也是在
JS
的主
线
程上运行的。像setTimeout、ajax的异步请求,或者是dom元素的一些事件,都是在
JS
主
线
程执行的,这些操作并没有在浏览器
中
开辟新的
线
程去执行,而是当这些异步操作被操作时或者是被触发时才进入事件队列,然后在
JS
主
线
程
中
开始运行。 首先说一下浏览器的
线
程,浏览器
中
主要的
线
程包括,UI渲染
线
程,
JS
主
线
程,GUI事件触发
线
程,http请求
线
程。
JS
作为脚本语言,它的主要用途是与用
JavaScript
87,922
社区成员
224,618
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章