关于set_new_handler的一些残存疑问
来源:互联网 发布:贵州大数据局局长 编辑:程序博客网 时间:2024/05/02 01:06
以下是本人写的一段代码:
#include<stdlib.h>
#include<new.h>
#include<iostream.h>
int count=0;
void outofmemory()
{
cerr<<"内存不足在您创建第"<<count<<"个对象的时候"<<endl;
exit(1);
}
class Counted
{
private:
int id;
public:
Counted():id(count++) {
cout<<"it's being created"<<endl;;
cout<<"id="<<id<<" count="<<count<<endl;
}
~Counted()
{
count--;
cout<<"it is being destroyed"<<endl;
cout<<"id="<<id<<" count="<<count<<endl;
}
};
int main()
{ set_new_handler(outofmemory);
Counted* c1=new Counted();
delete c1;
Counted* c2=new Counted[10];
delete[] c2;
while(1)
new Counted;
}
在mingyw下编译并通过,但出现的问题如图所示:
内存的大小没有发生变化,而cpu的使用率却为100%;
如果去掉构造函数的打印语句:cout<<"it's being created"<<endl;;
cout<<"id="<<id<<" count="<<count<<endl;就会使内存使用率变大而cpu使用率不发生显著的变化;
请阅读的同志们思考思考:这是怎么回事???
- 关于set_new_handler的一些残存疑问
- 关于 set_new_handler的总结
- 关于 set_new_handler的总结
- 关于360的一些疑问
- 关于PopupMenuListener的一些疑问
- 关于Spring的一些疑问
- 关于chukwa的一些疑问
- 关于jdbc的一些疑问
- 关于MFC的一些疑问
- 关于socket的一些疑问
- 关于定位的一些疑问
- 上一份工作还残存的一些小技巧
- 关于set_new_handler
- 关于set_new_handler
- 关于set_new_handler
- 关于set_new_handler
- 关于图片的居中的一些疑问
- 关于学习C#的一些疑问。
- 创业者要想VC之所想,急VC之所急。
- visual basic 6 下载 和 Vb6sp6 下载
- 喷血之举--割肉之痛
- 在Linux下对文件进行编码转换(简体→繁体,繁体→简体,简体繁体→UTF-8)
- 北京VC办公室探秘
- 关于set_new_handler的一些残存疑问
- 用Java制作网络文件下载系统
- Java学习,升级过程
- [转载收藏] Hello World - WDM驱动程序入门 安装步骤
- 大型高并发高负载网站的系统架构
- 4-inverse和cascade在关联更新中的作用
- jspSmartUpload上传下载全攻略(转)
- 让大家参透庄家的意图
- [转载收藏] 在VC中利用Makefile工程编译DDK驱动