由于某些原因我无法控制父进程,因此我尝试使用jemalloc进行内存配置,因此,除了在外部设置MALLOC_CONF env变量外,我尝试在程序内设置变量,但似乎无法正常工作。
我尝试过在外部设置MALLOC_CONF env,然后启动该过程。
以下是示例程序的代码段
void keep_mallocing(int count, size_t size, int **ptr) {
int i =0;
for(i=0; i
ptr[i] = malloc(size);
memset(ptr[i], 0, size);
}
}
void keep_freeing(int count, int **ptr) {
int i = 0;
for(i=0; i
free(ptr[i]);
}
}
void handle_sigusr1(int sig)
{
// malloc_stats_print(NULL, NULL, "g,l,b,h,m,a");
char *path = 0;
path = getenv( "MALLOC_CONF" );
printf("path : %s\n", path);
mallctl("prof.dump", NULL, NULL, NULL, 0);
return;
}
int
main(int argc, char **argv) {