diff options
Diffstat (limited to 'src/libPThread/PThreadKit/Thread.h')
| -rw-r--r-- | src/libPThread/PThreadKit/Thread.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/libPThread/PThreadKit/Thread.h b/src/libPThread/PThreadKit/Thread.h new file mode 100644 index 00000000..5282a623 --- /dev/null +++ b/src/libPThread/PThreadKit/Thread.h @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright 2026, Amlal El Mahrouss (amlal@nekernel.org) +// Licensed under the Apache License, Version 2.0 (see LICENSE file) +// Official repository: https://github.com/ne-foss-org/nekernel + +#ifndef LIBPOSIX_POSIXKIT_THREAD_H +#define LIBPOSIX_POSIXKIT_THREAD_H + +#include <libPOSIXWrapper/POSIXKit/unistd.h> + +/// @brief Please use these macros to specify whether your function is thread safe or not. +#define PTHREAD_UNSAFE __THREAD_UNSAFE +#define PTHREAD_SAFE __THREAD_SAFE + +PTHREAD_SAFE SInt32 pthread_create(_Output ThreadRef* thread, VoidPtr attr, VoidPtr (*start_routine)(VoidPtr), VoidPtr arg); +PTHREAD_SAFE SInt32 pthread_join(ThreadRef thread, VoidPtr* retval); +PTHREAD_SAFE SInt32 pthread_exit(SInt32 retval); +PTHREAD_SAFE SInt32 pthread_detach(ThreadRef thread); +PTHREAD_SAFE ThreadRef pthread_self(Void); +PTHREAD_SAFE SInt32 pthread_yield(void); + +#endif // LIBPOSIX_POSIXKIT_THREAD_H |
