void safe_printf(char *format,...) { va_list arglist; services_sema.Wait(); va_start(arglist,format); vprintf(format,arglist); va_end(arglist); services_sema.Post(); }