?? thread_leak_test.c
字號:
#ifndef GC_THREADS# define GC_THREADS#endif /* GC_THREADS */#include "leak_detector.h"#include <pthread.h>#include <stdio.h>void * test(void * arg) { int *p[10]; int i; GC_find_leak = 1; /* for new collect versions not compiled */ /* with -DFIND_LEAK. */ for (i = 0; i < 10; ++i) { p[i] = malloc(sizeof(int)+i); } CHECK_LEAKS(); for (i = 1; i < 10; ++i) { free(p[i]); } return 0;} #define NTHREADS 5main() { int i; pthread_t t[NTHREADS]; int code; GC_INIT(); for (i = 0; i < NTHREADS; ++i) { if ((code = pthread_create(t + i, 0, test, 0)) != 0) { printf("Thread creation failed %d\n", code); } } for (i = 0; i < NTHREADS; ++i) { if ((code = pthread_join(t[i], 0)) != 0) { printf("Thread join failed %lu\n", code); } } CHECK_LEAKS(); CHECK_LEAKS(); CHECK_LEAKS(); return 0;}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -