Home
last modified time | relevance | path

Searched refs:rwlock (Results 1 - 2 of 2) sorted by relevance

/foundation/resourceschedule/ffrt/interfaces/inner_api/c/
H A Dshared_mutex.h29 * @brief Declares the rwlock interfaces in C.
40 * @brief Initializes a rwlock.
42 * @param rwlock Indicates a pointer to the rwlock.
43 * @param attr Indicates a pointer to the rwlock attribute.
44 * @return Returns <b>ffrt_thrd_success</b> if the rwlock is initialized;
48 FFRT_C_API int ffrt_rwlock_init(ffrt_rwlock_t* rwlock, const ffrt_rwlockattr_t* attr);
53 * @param rwlock Indicates a pointer to the rwlock.
54 * @return Returns <b>ffrt_thrd_success</b> if the rwlock i
[all...]
/foundation/resourceschedule/ffrt/src/sync/
H A Dshared_mutex.cpp182 int ffrt_rwlock_init(ffrt_rwlock_t* rwlock, const ffrt_rwlockattr_t* attr) in ffrt_rwlock_init() argument
184 if (!rwlock) { in ffrt_rwlock_init()
185 FFRT_LOGE("rwlock should not be empty"); in ffrt_rwlock_init()
189 FFRT_LOGE("only support normal rwlock"); in ffrt_rwlock_init()
195 new (rwlock)ffrt::SharedMutexPrivate(); in ffrt_rwlock_init()
200 int ffrt_rwlock_wrlock(ffrt_rwlock_t* rwlock) in ffrt_rwlock_wrlock() argument
202 if (!rwlock) { in ffrt_rwlock_wrlock()
203 FFRT_LOGE("rwlock should not be empty"); in ffrt_rwlock_wrlock()
206 auto p = reinterpret_cast<ffrt::SharedMutexPrivate*>(rwlock); in ffrt_rwlock_wrlock()
212 int ffrt_rwlock_trywrlock(ffrt_rwlock_t* rwlock) in ffrt_rwlock_trywrlock() argument
223 ffrt_rwlock_rdlock(ffrt_rwlock_t* rwlock) ffrt_rwlock_rdlock() argument
235 ffrt_rwlock_tryrdlock(ffrt_rwlock_t* rwlock) ffrt_rwlock_tryrdlock() argument
246 ffrt_rwlock_unlock(ffrt_rwlock_t* rwlock) ffrt_rwlock_unlock() argument
258 ffrt_rwlock_destroy(ffrt_rwlock_t* rwlock) ffrt_rwlock_destroy() argument
[all...]

Completed in 1 milliseconds