23#ifndef COMPONENTS_SERVICES_MYSQL_MUTEX_H
24#define COMPONENTS_SERVICES_MYSQL_MUTEX_H
29#define REQUIRES_MYSQL_MUTEX_SERVICE REQUIRES_SERVICE(mysql_mutex_v1)
30#define REQUIRES_MYSQL_MUTEX_SERVICE_PLACEHOLDER \
31 REQUIRES_SERVICE_PLACEHOLDER(mysql_mutex_v1)
35#define MYSQL_MUTEX_CALL(M) SERVICE_PLACEHOLDER(mysql_mutex_v1)->M
37#define mysql_mutex_register(P1, P2, P3) \
38 MYSQL_MUTEX_CALL(register_info)(P1, P2, P3)
40#define mysql_mutex_init(K, M, A) \
41 mysql_mutex_init_with_src(K, M, A, __FILE__, __LINE__)
42#define mysql_mutex_init_with_src(K, M, A, F, L) \
43 MYSQL_MUTEX_CALL(init)(K, M, A, F, L)
45#define mysql_mutex_destroy(M) \
46 mysql_mutex_destroy_with_src(M, __FILE__, __LINE__)
47#define mysql_mutex_destroy_with_src(M, F, L) MYSQL_MUTEX_CALL(destroy)(M, F, L)
49#define mysql_mutex_lock(M) mysql_mutex_lock_with_src(M, __FILE__, __LINE__)
50#define mysql_mutex_lock_with_src(M, F, L) MYSQL_MUTEX_CALL(lock)(M, F, L)
52#define mysql_mutex_trylock(M) \
53 mysql_mutex_trylock_with_src(M, __FILE__, __LINE__)
54#define mysql_mutex_trylock_with_src(M, F, L) MYSQL_MUTEX_CALL(trylock)(M, F, L)
56#define mysql_mutex_unlock(M) mysql_mutex_unlock_with_src(M, __FILE__, __LINE__)
57#define mysql_mutex_unlock_with_src(M, F, L) MYSQL_MUTEX_CALL(unlock)(M, F, L)
Specifies macros to define Components.
#define REQUIRES_MYSQL_MUTEX_SERVICE_PLACEHOLDER
Definition: mysql_mutex.h:30