aboutsummaryrefslogtreecommitdiff
path: root/pa4_shared_array/array.h
blob: 3522530048c07b8d594d6bc4963aab13fb4edd1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Jack Sangdahl
// CSCI3753 SP24
// PA4 Shared Array
#include <semaphore.h>

#define ARRAY_SIZE 8

typedef struct {
  void *data[ARRAY_SIZE];
  int top;
  sem_t mutex;
  sem_t avail;
  sem_t empty;
} array;

int array_init(array *s);
int array_put(array *s, char *hostname);
int array_get(array *s, char **hostname);
void array_free(array *s);