我在一个线程中分配一些内存.当我打电话pthread_detach(pthread_self());这是分配给这个线程通过Linux的内存应该被释放后,线程被终止pthread_exit();或pthread_cancel().
我的问题是,我是否还应该释放我用malloc分配的内存?另外,如果线程中的其他函数分配了一些空间,我是否也应该释放这个空间,即使线程终止并 pthread_detach(pthread_self());在线程中调用?
void *test_thread(void * arg)
{
pthread_detach(pthread_self());
int *c = malloc(2048);
pthread_exit(NULL);
}
Run Code Online (Sandbox Code Playgroud)