2021-02-14 18:34:18 +03:30
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2021, the SerenityOS developers.
|
|
|
|
|
*
|
2021-04-22 01:24:48 -07:00
|
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
2021-02-14 18:34:18 +03:30
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <sys/cdefs.h>
|
2021-04-17 18:38:32 +02:00
|
|
|
#include <sys/types.h>
|
2021-02-14 18:34:18 +03:30
|
|
|
|
|
|
|
|
__BEGIN_DECLS
|
|
|
|
|
|
|
|
|
|
void __pthread_fork_prepare(void);
|
|
|
|
|
void __pthread_fork_child(void);
|
|
|
|
|
void __pthread_fork_parent(void);
|
|
|
|
|
void __pthread_fork_atfork_register_prepare(void (*)(void));
|
|
|
|
|
void __pthread_fork_atfork_register_parent(void (*)(void));
|
|
|
|
|
void __pthread_fork_atfork_register_child(void (*)(void));
|
|
|
|
|
|
2021-07-05 14:41:41 +03:00
|
|
|
int __pthread_mutex_init(pthread_mutex_t*, const pthread_mutexattr_t*);
|
2021-04-17 18:38:32 +02:00
|
|
|
int __pthread_mutex_lock(pthread_mutex_t*);
|
2021-04-24 20:34:50 +02:00
|
|
|
int __pthread_mutex_trylock(pthread_mutex_t*);
|
2021-07-05 14:55:57 +03:00
|
|
|
int __pthread_mutex_lock_pessimistic_np(pthread_mutex_t*);
|
2021-04-17 18:38:32 +02:00
|
|
|
int __pthread_mutex_unlock(pthread_mutex_t*);
|
|
|
|
|
|
|
|
|
|
typedef void (*KeyDestructor)(void*);
|
|
|
|
|
|
|
|
|
|
int __pthread_key_create(pthread_key_t*, KeyDestructor);
|
|
|
|
|
int __pthread_key_delete(pthread_key_t);
|
|
|
|
|
void* __pthread_getspecific(pthread_key_t);
|
|
|
|
|
int __pthread_setspecific(pthread_key_t, const void*);
|
2021-02-14 18:34:18 +03:30
|
|
|
|
|
|
|
|
int __pthread_self();
|
|
|
|
|
|
2021-04-17 18:38:32 +02:00
|
|
|
void __pthread_key_destroy_for_current_thread();
|
|
|
|
|
|
2021-02-14 18:34:18 +03:30
|
|
|
#define __PTHREAD_MUTEX_NORMAL 0
|
|
|
|
|
#define __PTHREAD_MUTEX_RECURSIVE 1
|
|
|
|
|
#define __PTHREAD_MUTEX_INITIALIZER \
|
|
|
|
|
{ \
|
|
|
|
|
0, 0, 0, __PTHREAD_MUTEX_NORMAL \
|
|
|
|
|
}
|
|
|
|
|
|
2021-07-05 22:53:31 +02:00
|
|
|
#define __PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \
|
|
|
|
|
{ \
|
|
|
|
|
0, 0, 0, __PTHREAD_MUTEX_RECURSIVE \
|
|
|
|
|
}
|
|
|
|
|
|
2021-02-14 18:34:18 +03:30
|
|
|
__END_DECLS
|