JavaScript使用yield模拟多线程的方法
作者:bea
本文实例讲述了JavaScript使用yield模拟多线程的方法。分享给大家供大家参考。具体分析如下: 在python和C#中都有yield方法,通过yield可以实现很多多线程才能实现的功能。 对javascript有版本要求:JavaScript 1.7 function Thread( name ) { for ( var i = 0; i < 5; i++ ) { Print(name+': '+i); yield; }}//// thre
本文实例讲述了JavaScript使用yield模拟多线程的方法。分享给大家供大家参考。具体分析如下:
在python和C#中都有yield方法,通过yield可以实现很多多线程才能实现的功能。 对javascript有版本要求:JavaScript 1.7
function Thread( name ) {
for ( var i = 0; i < 5; i++ ) {
Print(name+': '+i);
yield;
}
}
//// thread management
var threads = [];
// thread creation
threads.push( new Thread('foo') );
threads.push( new Thread('bar') );
// scheduler
while (threads.length) {
var thread = threads.shift();
try {
thread.next();
threads.push(thread);
} catch(ex if ex instanceof StopIteration) {}
}
上面代码输入结果如下:
foo: 0
bar: 0
foo: 1
bar: 1
foo: 2
bar: 2
foo: 3
bar: 3
foo: 4
bar: 4
希望本文所述对大家的javascript程序设计有所帮助。
有用 | 无用
在python和C#中都有yield方法,通过yield可以实现很多多线程才能实现的功能。 对javascript有版本要求:JavaScript 1.7
function Thread( name ) {
for ( var i = 0; i < 5; i++ ) {
Print(name+': '+i);
yield;
}
}
//// thread management
var threads = [];
// thread creation
threads.push( new Thread('foo') );
threads.push( new Thread('bar') );
// scheduler
while (threads.length) {
var thread = threads.shift();
try {
thread.next();
threads.push(thread);
} catch(ex if ex instanceof StopIteration) {}
}
上面代码输入结果如下:
foo: 0
bar: 0
foo: 1
bar: 1
foo: 2
bar: 2
foo: 3
bar: 3
foo: 4
bar: 4
希望本文所述对大家的javascript程序设计有所帮助。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- 纯Javascript实现ping功能的方法
- jQuery找出网页上最高元素的方法
- jQuery实现平滑滚动到指定锚点的方法
- jQuery在页面加载时动态修改图片尺寸的方法
- jQuery实现页面滚动时动态加载内容的方法
- JavaScript控制图片加载完成后调用回调函数的方法
- jQuery UI插件自定义confirm确认框的方法
- js使用split函数按照多个字符对字符串进行分割的方法
- 原生Js实现简易烟花爆炸效果的方法
- Javascript调用函数方法的几种方式介绍
- 初识Node.js
- JavaScript Sort 的一个错误用法示例
- JS实现的数组全排列输出算法
- JavaScript在浏览器标题栏上显示当前日期和时间的方法
- JavaScript实现在标题栏上显示当前日期的方法
- JavaScript显示当前文档最后修改日期的方法
- JavaScript将一个数组插入到另一个数组的方法
- JS中prototype的用法实例分析
- JS获取Table中td值的方法