mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 15:40:19 +00:00
LibPthread: Add POSIX spec links for pthread_cond API
This commit is contained in:
parent
54e15821cd
commit
800f14298d
Notes:
sideshowbarker
2024-07-17 21:30:30 +09:00
Author: https://github.com/bgianfo Commit: https://github.com/SerenityOS/serenity/commit/800f14298d2 Pull-request: https://github.com/SerenityOS/serenity/pull/11691 Reviewed-by: https://github.com/Quaker762 ✅
1 changed files with 9 additions and 0 deletions
|
@ -16,17 +16,20 @@
|
||||||
|
|
||||||
// Condition variable attributes.
|
// Condition variable attributes.
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_init.html
|
||||||
int pthread_condattr_init(pthread_condattr_t* attr)
|
int pthread_condattr_init(pthread_condattr_t* attr)
|
||||||
{
|
{
|
||||||
attr->clockid = CLOCK_MONOTONIC_COARSE;
|
attr->clockid = CLOCK_MONOTONIC_COARSE;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_destroy.html
|
||||||
int pthread_condattr_destroy(pthread_condattr_t*)
|
int pthread_condattr_destroy(pthread_condattr_t*)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_setclock.html
|
||||||
int pthread_condattr_setclock(pthread_condattr_t* attr, clockid_t clock)
|
int pthread_condattr_setclock(pthread_condattr_t* attr, clockid_t clock)
|
||||||
{
|
{
|
||||||
attr->clockid = clock;
|
attr->clockid = clock;
|
||||||
|
@ -44,6 +47,7 @@ static constexpr u32 NEED_TO_WAKE_ONE = 1;
|
||||||
static constexpr u32 NEED_TO_WAKE_ALL = 2;
|
static constexpr u32 NEED_TO_WAKE_ALL = 2;
|
||||||
static constexpr u32 INCREMENT = 4;
|
static constexpr u32 INCREMENT = 4;
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_init.html
|
||||||
int pthread_cond_init(pthread_cond_t* cond, const pthread_condattr_t* attr)
|
int pthread_cond_init(pthread_cond_t* cond, const pthread_condattr_t* attr)
|
||||||
{
|
{
|
||||||
cond->mutex = nullptr;
|
cond->mutex = nullptr;
|
||||||
|
@ -52,16 +56,19 @@ int pthread_cond_init(pthread_cond_t* cond, const pthread_condattr_t* attr)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_destroy.html
|
||||||
int pthread_cond_destroy(pthread_cond_t*)
|
int pthread_cond_destroy(pthread_cond_t*)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_wait.html
|
||||||
int pthread_cond_wait(pthread_cond_t* cond, pthread_mutex_t* mutex)
|
int pthread_cond_wait(pthread_cond_t* cond, pthread_mutex_t* mutex)
|
||||||
{
|
{
|
||||||
return pthread_cond_timedwait(cond, mutex, nullptr);
|
return pthread_cond_timedwait(cond, mutex, nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_timedwait.html
|
||||||
int pthread_cond_timedwait(pthread_cond_t* cond, pthread_mutex_t* mutex, const struct timespec* abstime)
|
int pthread_cond_timedwait(pthread_cond_t* cond, pthread_mutex_t* mutex, const struct timespec* abstime)
|
||||||
{
|
{
|
||||||
// Save the mutex this condition variable is associated with. We don't (yet)
|
// Save the mutex this condition variable is associated with. We don't (yet)
|
||||||
|
@ -85,6 +92,7 @@ int pthread_cond_timedwait(pthread_cond_t* cond, pthread_mutex_t* mutex, const s
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_signal.html
|
||||||
int pthread_cond_signal(pthread_cond_t* cond)
|
int pthread_cond_signal(pthread_cond_t* cond)
|
||||||
{
|
{
|
||||||
// Increment the generation.
|
// Increment the generation.
|
||||||
|
@ -114,6 +122,7 @@ int pthread_cond_signal(pthread_cond_t* cond)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_broadcast.html
|
||||||
int pthread_cond_broadcast(pthread_cond_t* cond)
|
int pthread_cond_broadcast(pthread_cond_t* cond)
|
||||||
{
|
{
|
||||||
// Increment the generation.
|
// Increment the generation.
|
||||||
|
|
Loading…
Reference in a new issue