我试图在8Gb Windows 7 64位计算机上写入RAM。
int main(int argc, char *argv[])
{
for (__int64* i; ; i = new __int64(0))
continue;
return 0;
}
在它占用大约2-3gig之后会引发异常:Microsoft C++ exception: std::bad_alloc at memory location 0x0039f634.
我可以告诉任务管理器中仍然有足够的RAM。我尝试过使用Visual Studio 2010和Qt Creator。
mlock.c
中抛出的异常中断:
void __cdecl _unlock (
int locknum
)
{
/*
* leave the critical section.
*/
LeaveCriticalSection( _locktable[locknum].lock );
}
有什么想法吗?我希望它用0写入所有非活动RAM。
答案 0 :(得分:0)
在构建选项中编译为x64而不是win32