当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 3 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [问题]ubuntu下写程序造成系统死机
帖子发表于 : 2008-05-22 18:46 

注册: 2008-05-13 13:18
帖子: 7
送出感谢: 0 次
接收感谢: 0 次
在Ubuntu 8.04系统里用Eclipse或者CodeBlocks写如下代码:
代码:
while(true)
{
    int* p = new int;
}


过一会,系统就死机了,鼠标没响应,按任何按键都没作用,等了很久都没恢复,只能重新启动计算机。
我试过同样的代码,在一个suse的终端里跑,机器虽然响应极慢,但是还没死,过了一段时间后运行的这个分配内存的程序就因为内存不足而core了。

各位大侠遇到过此类问题么,请问是Ubuntu 系统的问题还是什么问题?
在windows下运行同样的代码也不会出问题,过一会就会提示内存不足了。不知道是不是linux系统对分配内存的优先级很高,其他程序没有运行机会了么?


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-05-22 21:17 
头像

注册: 2005-07-02 14:41
帖子: 4133
系统: Ubuntu 14.04 (Kylin)
送出感谢: 53
接收感谢: 11
可能Suse资源分配保守些。

归根到底还是你的程序不对头。

预防自己的话,设置一下ulimit就可以。

如果是防全局的,/etc/security/limits.conf设置一下


_________________
https://weakish.github.io


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-05-23 8:52 

注册: 2008-05-13 13:18
帖子: 7
送出感谢: 0 次
接收感谢: 0 次
感谢这位朋友的帮助,请问是用这个命令限制一下某些程序的cpu占用率么?

我知道是程序的问题,不过写比较复杂的程序时,很容易出现间接的死循环,如果出现死循环就导致系统或者调试器没相应那不是很难跟踪调试么。

我在Eclipse里写过一段代码
代码:
while(true)
{
    printf("aa");
}


然后过一会Eclipse就没响应了。请问向窗口输出信息也很费资源么?


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 3 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译