From 04f5d638ddd2a07cb03a7ca057d86b259b534220 Mon Sep 17 00:00:00 2001 From: zzy <2450266535@qq.com> Date: Tue, 24 Oct 2023 09:06:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BE=9B=E7=BA=BF=E7=A8=8B=E5=AE=89?= =?UTF-8?q?=E5=85=A8IO=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tthread.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tthread.h b/tthread.h index f3417d1..2a3e470 100644 --- a/tthread.h +++ b/tthread.h @@ -210,6 +210,15 @@ static inline int thread_cond_wait(COND* cond, MUTEX* mutex) { //} // thread safety stdio +static inline tprintf(MUTEX* mutex, const char* format, ...) { + va_list var; + va_start(var, format); + thread_mutex_lock(mutex); + vprintf(format, var); + thread_mutex_unlock(mutex); + va_end(var); +} + static inline tfprintf(MUTEX* mutex, FILE *const stream, const char* format, ...) { va_list var; va_start(var, format); @@ -219,6 +228,24 @@ static inline tfprintf(MUTEX* mutex, FILE *const stream, const char* format, ... va_end(var); } +static inline tsprintf(MUTEX* mutex, char* const buffer, const char* format, ...) { + va_list var; + va_start(var, format); + thread_mutex_lock(mutex); + vsprintf(buffer, format, var); + thread_mutex_unlock(mutex); + va_end(var); +} + +static inline tsnprintf(MUTEX* mutex, char* const buffer, const size_t buffer_count, const char* format, ...) { + va_list var; + va_start(var, format); + thread_mutex_lock(mutex); + vsnprintf(buffer,buffer_count, format, var); + thread_mutex_unlock(mutex); + va_end(var); +} + #ifdef __cplusplus } #endif