CS350 COS
COS
Loading...
Searching...
No Matches
pthread.h
Go to the documentation of this file.
1
2#ifndef __PTHREAD_H__
3#define __PTHREAD_H__
4
5#include <time.h>
6
7#define PTHREAD_MUTEX_INITIALIZER NULL
8#define PTHREAD_COND_INITIALIZER NULL
9
10typedef struct pthread *pthread_t;
12typedef struct pthread_barrier *pthread_barrier_t;
13typedef struct pthread_barrierattr *pthread_barrierattr_t;
18
20int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
21 void *(*start_routine)(void *), void *arg);
22void pthread_exit(void *value_ptr);
23int pthread_join(pthread_t thread, void **value_ptr);
24void pthread_yield(void);
25
26/*
27 * Barriers
28 */
29
31 const pthread_barrierattr_t *attr,
32 unsigned count);
35
36/*
37 * Mutex
38 */
39
41 const pthread_mutexattr_t *attr);
46
47/*
48 * Reader/Writer Lock
49 */
50
51/*
52 * Condition Variables
53 */
54
59 const struct timespec *abstime);
62
63#endif /* __PTHREAD_H__ */
64
void pthread_exit(void *value_ptr)
Definition: pthread.c:142
int pthread_mutex_lock(pthread_mutex_t *mutex)
Definition: pthread.c:246
struct pthread_mutexattr * pthread_mutexattr_t
Definition: pthread.h:15
int pthread_cond_signal(pthread_cond_t *cond)
Definition: pthread.c:440
int pthread_mutex_trylock(pthread_mutex_t *mutex)
Definition: pthread.c:267
struct pthread_barrier * pthread_barrier_t
Definition: pthread.h:12
struct pthread_mutex * pthread_mutex_t
Definition: pthread.h:14
int pthread_mutex_destroy(pthread_mutex_t *mutex)
Definition: pthread.c:230
struct pthread_attr * pthread_attr_t
Definition: pthread.h:11
pthread_t pthread_self(void)
Definition: pthread.c:79
struct pthread * pthread_t
Definition: pthread.h:10
int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *attr)
Definition: pthread.c:215
void pthread_yield(void)
Definition: pthread.c:173
struct pthread_condattr * pthread_condattr_t
Definition: pthread.h:17
int pthread_barrier_wait(pthread_barrier_t *barrier)
Definition: pthread.c:197
struct pthread_cond * pthread_cond_t
Definition: pthread.h:16
int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex)
Definition: pthread.c:355
int pthread_mutex_unlock(pthread_mutex_t *mutex)
Definition: pthread.c:288
int pthread_cond_destroy(pthread_cond_t *cond)
Definition: pthread.c:344
int pthread_join(pthread_t thread, void **value_ptr)
Definition: pthread.c:152
int pthread_cond_timedwait(pthread_cond_t *cond, pthread_mutex_t *mutex, const struct timespec *abstime)
Definition: pthread.c:393
struct pthread_barrierattr * pthread_barrierattr_t
Definition: pthread.h:13
int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr)
Definition: pthread.c:326
int pthread_barrier_init(pthread_barrier_t *barrier, const pthread_barrierattr_t *attr, unsigned count)
Definition: pthread.c:183
int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg)
Definition: pthread.c:108
int pthread_barrier_destroy(pthread_barrier_t *barrier)
Definition: pthread.c:191
int pthread_cond_broadcast(pthread_cond_t *cond)
Definition: pthread.c:459