123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- #ifndef SERVICE_LOCKING_INCLUDED
- #define SERVICE_LOCKING_INCLUDED
- #ifdef __cplusplus
- class THD;
- #define MYSQL_THD THD*
- #else
- #define MYSQL_THD void*
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- enum enum_locking_service_lock_type
- { LOCKING_SERVICE_READ, LOCKING_SERVICE_WRITE };
- extern struct mysql_locking_service_st {
-
- int (*mysql_acquire_locks)(MYSQL_THD opaque_thd, const char* lock_namespace,
- const char**lock_names, size_t lock_num,
- enum enum_locking_service_lock_type lock_type,
- unsigned long lock_timeout);
-
- int (*mysql_release_locks)(MYSQL_THD opaque_thd, const char* lock_namespace);
- } *mysql_locking_service;
- #ifdef MYSQL_DYNAMIC_PLUGIN
- #define mysql_acquire_locking_service_locks(_THD, _NAMESPACE, _NAMES, _NUM, \
- _TYPE, _TIMEOUT) \
- mysql_locking_service->mysql_acquire_locks(_THD, _NAMESPACE, _NAMES, _NUM, \
- _TYPE, _TIMEOUT)
- #define mysql_release_locking_service_locks(_THD, _NAMESPACE) \
- mysql_locking_service->mysql_release_locks(_THD, _NAMESPACE)
- #else
- int mysql_acquire_locking_service_locks(MYSQL_THD opaque_thd,
- const char* lock_namespace,
- const char**lock_names,
- size_t lock_num,
- enum enum_locking_service_lock_type lock_type,
- unsigned long lock_timeout);
- int mysql_release_locking_service_locks(MYSQL_THD opaque_thd,
- const char* lock_namespace);
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif
|