這篇文章主要介紹了JavaScript使用yield模擬多線程的方法,實例分析了javascript多線程的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答
圖片精選