JS真可怕.............

2011-12-23 17:54:10 +08:00
 Air_Mu
刚才看到一篇文章说JS死循环之类的浏览器会提示不执行。

于是做了个最简单的死循环。用CHROME打开,结果悲剧了。瞬间系统失去响应,崩溃。死机。只得重启。

更悲情的是重启后习惯性的打开CHROME,习惯性的恢复上一次错误关闭的页面。又死机了又得重启。

啊 CHROME没有提示么.........
4385 次点击
所在节点    分享发现
14 条回复
manhere
2011-12-23 18:06:31 +08:00
记得遇到这种脚本Opera会提醒的
dreamersdw
2011-12-23 18:27:14 +08:00
这种情况很可能是因为内存耗尽而导致系统假死,单纯的 CPU 100% 使用率只会让系统稍微变慢。

我为了防止假死的情况出现,就在 /etc/security/limits.conf 中加了一条任何进程不得使用超过 4GB 地址空间的规则,
delectate
2011-12-23 18:40:58 +08:00
fx也会提示的,所以每次被打开百度,自动提示脚本失去响应。
yyfearth
2011-12-23 18:52:41 +08:00
chrome对冻结的页面也会有提醒的啊
holmesabc
2011-12-23 19:24:59 +08:00
刚随便搞了个死循环,就浏览器1个标签挂了而已。
没说的这么厉害吧。
mew7wo
2011-12-23 21:44:54 +08:00
试过一次用chrome做js递归,结果爆栈了。然后就蓝屏了。
alsotang
2011-12-23 22:04:26 +08:00
呵呵呵。看来chrome应该多学学搜狗浏览器,人家号称“一次只挂一个标签,关闭即可”。
Air_Mu
2011-12-23 22:15:55 +08:00
@holmesabc @alsotang 这个原因是内存耗尽了。。

我2G内存跑个WIN7 现在确实有点不够了
zythum
2011-12-23 22:24:37 +08:00
浏览器们压力山大 .
alsotang
2011-12-23 23:18:41 +08:00
@Air_Mu 我也2G内存啊....我这台笔记本,三星的,去年7月买的。价值3500....所以一直躲在ubuntu下不敢用win7.。。
benzhe
2011-12-24 00:43:23 +08:00
在chrome下js内部死循环貌似不会导致溢出,类似于 javascript:var i = $('html').html();while(1) i++; 这种在我这边内存没有任何变化=.=, 不过CPU倒是满的
然而这种操作DOM的就很恐怖了:javascript:while(1) $($('body').html()).appendTo($('body'));
Air_Mu
2011-12-24 00:50:11 +08:00
@benzhe 啊,难道跟电脑本身或者操作系统有关?

我写的是while(true){document.write('fuckgfw')}

不敢试了,已经死机2次了。也不敢用FIREFOX试。。
benzhe
2011-12-24 00:52:36 +08:00
@Air_Mu 你这已经操作DOM了...
Air_Mu
2011-12-24 00:55:48 +08:00
@benzhe 啊...这样啊。还没学过JS,计划圣诞节后开始学呢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/24154

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX