char *p = NULL; char * func( int size ) { if( p == NULL ) p = (char*)malloc(size); return p; } 这个函数在多线程环境下有什么问题?