📄 os0sync.ic
字号:
/******************************************************The interface to the operating system synchronization primitives.(c) 1995 Innobase OyCreated 9/6/1995 Heikki Tuuri*******************************************************/#ifdef __WIN__#include <winbase.h>#endif/**************************************************************Acquires ownership of a fast mutex. Currently in Windows this is the sameas os_fast_mutex_lock! */UNIV_INLINEulintos_fast_mutex_trylock(/*==================*/ /* out: 0 if success, != 0 if was reserved by another thread */ os_fast_mutex_t* fast_mutex) /* in: mutex to acquire */{#ifdef __WIN__ EnterCriticalSection(fast_mutex); return(0);#else#if defined(UNIV_HOTBACKUP) && defined(UNIV_HPUX10) /* Since the hot backup version is standalone, MySQL does not redefine pthread_mutex_trylock for HP-UX-10.20, and consequently we must invert the return value here */ return((ulint) (1 - pthread_mutex_trylock(fast_mutex)));#else /* NOTE that the MySQL my_pthread.h redefines pthread_mutex_trylock so that it returns 0 on success. In the operating system libraries, HP-UX-10.20 follows the old Posix 1003.4a Draft 4 and returns 1 on success (but MySQL remaps that to 0), while Linux, FreeBSD, Solaris, AIX, Tru64 Unix, HP-UX-11.0 return 0 on success. */ return((ulint) pthread_mutex_trylock(fast_mutex));#endif#endif}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -