Explorar o código

feat(#612): Add hmutex_trylock

ithewei hai 10 meses
pai
achega
771ab9c6b9
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      base/hmutex.h

+ 2 - 0
base/hmutex.h

@@ -12,6 +12,7 @@ BEGIN_EXTERN_C
 #define hmutex_init             InitializeCriticalSection
 #define hmutex_destroy          DeleteCriticalSection
 #define hmutex_lock             EnterCriticalSection
+#define hmutex_trylock          TryEnterCriticalSection
 #define hmutex_unlock           LeaveCriticalSection
 
 #define hrecursive_mutex_t          CRITICAL_SECTION
@@ -79,6 +80,7 @@ static inline void honce(honce_t* once, honce_fn fn) {
 #define hmutex_init(pmutex)     pthread_mutex_init(pmutex, NULL)
 #define hmutex_destroy          pthread_mutex_destroy
 #define hmutex_lock             pthread_mutex_lock
+#define hmutex_trylock(pmutex)  (pthread_mutex_trylock(pmutex) == 0)
 #define hmutex_unlock           pthread_mutex_unlock
 
 #define hrecursive_mutex_t          pthread_mutex_t