#include #include static pthread_mutex_t lock_record_logpath = PTHREAD_MUTEX_INITIALIZER; #define LOGPATH_LOCK pthread_mutex_lock(&lock_record_logpath) #define LOGPATH_UNLOCK pthread_mutex_unlock(&lock_record_logpath) static pthread_mutex_t lock_record_log = PTHREAD_MUTEX_INITIALIZER; #define LOG_LOCK pthread_mutex_lock(&lock_record_log) #define LOG_UNLOCK pthread_mutex_unlock(&lock_record_log) #define MAX_LOG_COUNT 5000 static char **log_prepare = NULL; static char **log_writing = NULL; static int log_thread_exit = 1; static int log_idx = 0; void create_dir(char *create_path) { char tmp_path[256]; strcpy(tmp_path,create_path); int i,len = strlen(tmp_path); for(i=1; i