ie6与多核cpu的单个核全速运行bug

本文介绍了一个关于Internet Explorer 6在多核CPU环境下导致某个核心持续全速运行的问题,并提供了一个示例代码来重现这一现象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可能 ie6 对多核cpu支持不佳,碰到一个情况,ie6使得多个cpu的某个核一直全速运行,致使总的cpu的运行率为:


(100/核的个数)%

 


而老式单核cpu没有问题。

 

bug 出现步鄹:


1.全速运行一段代码持续一段时间(不能太短)

2.赋给 绝对定位的一个元素的 innerhtml 为一大串字符。(使浏览器进行大量解析操作)


则可见,ie6 在多核 cpu 中持续使得某核运行,则再付大量字符串给innerHTML ,之后cpu降不下来了

 

示例图:(4核)

 

IE6:

 


Firefox:

 

 

 

示例代码:

 

 

<!DOCTYPE html>
<html>
	<head>
	<title>IE6 : 多核cpu 某个核全速运行问题</title>
	
	<script type="text/javascript">
	//<![CDATA[
	
		window.onload=(function() {
			
		    document.getElementById('action_a').onclick=function() {
		    	
				    	var table="<table>";
				    	tbody="<tbody>";
				    	
				    	for(var row=0;row<100;row++) {
				    		var tr="<tr>";
				    		for(var col=0;col<1000;col++) {
				    			var td="<td>";
				    			td+=row+"_"+col+"</td>";
				    			tr+=td;
				    		}
				    		tbody+=tr+"</tr>";
				    	}
				    	
				    	table+=tbody+"</tbody>"+"</table>";
	            
	            //之前cpu的一个单核一直持续运行超过一定时间
	            
	              	    	
		    			alert("大数据量已经生成,将要渲染到绝对定位DIV");
					    //大数据量
					    setTimeout(function() {
					    	
					    	//下一步将一个大字符串赋给 innerHTML ,
					   		document.getElementById("simpleTest").innerHTML=table;
					   		//table=null;
					   		
					   		//即使没有操作了,之后cpu的一个单核仍然全速运行,cpu为 100%/核的个数
					   		//ps:在只有一个核的cpu下没有问题,到这就cpu很低了
					  	},250);
					  	
					  	
		    };
		    
		});
	//]]>
	
	</script>
	
	</head>
<body>

	<button id='action_a'> 显示</button>
	
	
	<div style="position:absolute;left:10px;top:40px;border:1px solid green;display:block;z-index:3;" id="simpleTest">
	</div>


</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值