1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-02-13 11:51:57 +00:00
srs/trunk/research/frame/bad_alloc1.cpp
2020-10-29 14:52:53 +08:00

17 lines
435 B
C++

/*
ulimit -S -v 204800
g++ -g -O0 bad_alloc1.cpp -o bad_alloc && ./bad_alloc
*/
#include <stdio.h>
#include <new>
void handler() {
printf("Memory allocate failed\n");
std::set_new_handler(NULL); // New will try to alloc again, then abort.
}
int main(){
std::set_new_handler(handler);
char* p1 = new char[193000 * 1024]; // huge allocation
char* p0 = new char[100 * 1024]; // small allocation
printf("OK\n");
}