国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS模擬多線程

2024-05-06 15:45:22
字體:
來源:轉載
供稿:網友

我們都知道JS是基于一個線程,同時這也是瀏覽器的JS引擎,下面錯新技術頻道小編將讓我們看看使用瀏覽器中的線程有哪些,感興趣的小伙伴們可以參考一下吧!

var Thread = {
?runNum : 0,??//當前正式運行的線程數
?maxNum : 10,?//最大同時執行的線程數 -1表示不限
?commandList : new Array(),?
?start : function(){
??//window.status = this.runNum;?
??if(this.maxNum != -1 && this.runNum >= this.maxNum){???
???return;?
??}
??if(this.commandList.length <= 0){??
???this.runNum = 0;
???return false;?
??}??
??this.runNum++;
??var _this =this;??
??var tFun = function(){
???if(!_this.commandList[0]) return;
???var command = _this.commandList[0].shift();???
???command.apply(_this,_this.commandList[0].concat(
????function(){??//alert(2)?????
?????if(_this.runNum > 0)_this.runNum--;?
?????setTimeout(function(){_this.start.apply(_this)},1);?????
????}));
???_this.commandList.shift();?
??}
??setTimeout(tFun,1);??
??setTimeout(function(){_this.start.apply(_this)},10);
?}
}
?

<script src="prototype.js"></script>
<script type="text/javascript" defer="defer">
function test(obj,info,callback){?
?callback = callback || new Function();
?new Ajax.Request('test.xml',{method:'get',
??onSuccess:function(o){

???$(obj).innerHTML += info + '完成<br>';
???callback('完成');
??},
??onFailure : function(o){
???$(obj).innerHTML += info + '失敗<br>';
???callback('失敗');
??},
??onComplete : function(o){
???document.body.scrollTop = 9999;
??}
?});
}

var Thread = {
?runNum : 0,??//當前正式運行的線程數
?maxNum : 5,?//最大同時執行的線程數 -1表示不限
?commandList : new Array(),?
?start : function(){
??//window.status = this.runNum;?
??if(this.maxNum != -1 && this.runNum >= this.maxNum){???
???return;?
??}
??if(this.commandList.length <= 0){??
???this.runNum = 0;
???return false;?
??}??
??this.runNum++;
??var _this =this;??
??var tFun = function(){
???if(!_this.commandList[0]) return;
???var command = _this.commandList[0].shift();???
???command.apply(_this,_this.commandList[0].concat(
????function(){??//alert(2)?????
?????if(_this.runNum > 0)_this.runNum--;?
?????setTimeout(function(){_this.start.apply(_this)},1);?????
????}));
???_this.commandList.shift();?
??}
??setTimeout(tFun,1);??
??setTimeout(function(){_this.start.apply(_this)},10);
?}
}

for(var i = 0; i < 100 ; i++){
?Thread.commandList.push(new Array(test,document.body,i+1));
};
Thread.start();
</script>
<body>
</body>

通過錯新技術頻道小編介紹的JS模擬多線程,相信大家都有了一定的了解,如需了解更多的相關資訊,請繼續關注錯新技術頻道吧!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 东平县| 东明县| 长宁区| 砚山县| 平乡县| 普兰县| 杭锦旗| 花莲县| 衡山县| 景东| 洛扎县| 武川县| 正定县| 灵山县| 苗栗县| 梁山县| 外汇| 西城区| 台中县| 日照市| 鹤岗市| 恭城| 远安县| 福海县| 内黄县| 天水市| 清涧县| 锡林郭勒盟| 安顺市| 彰化市| 黄龙县| 安宁市| 灵武市| 鸡泽县| 财经| 稷山县| 来凤县| 万山特区| 文安县| 泰安市| 宁波市|