From 6e6f4151b7f709fbaf62e40479c700a81436512f Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Thu, 3 Oct 2024 11:45:34 -0600 Subject: pa4: improvements --- pa4_shared_array/array.h | 39 +++++---------------------------------- 1 file changed, 5 insertions(+), 34 deletions(-) (limited to 'pa4_shared_array/array.h') diff --git a/pa4_shared_array/array.h b/pa4_shared_array/array.h index 9d67e1e..3522530 100644 --- a/pa4_shared_array/array.h +++ b/pa4_shared_array/array.h @@ -2,47 +2,18 @@ // CSCI3753 SP24 // PA4 Shared Array #include -#include -#include -#include -#include -#define ARRAY_SIZE 8 // number of hostnames in data/ is 618 -#define MAX_NAME_LENGTH 16 // longest string length in data/ +#define ARRAY_SIZE 8 typedef struct { - char **array; - uint8_t top; + void *data[ARRAY_SIZE]; + int top; sem_t mutex; - sem_t space; - sem_t items; + sem_t avail; + sem_t empty; } array; -/** - * @brief initialise the array - * @param s - * @return int - */ int array_init(array *s); - -/** - * @brief place element into array. block when full - * @param s - * @param hostname - * @return int - */ int array_put(array *s, char *hostname); - -/** - * @brief remove element from the array. block when empty - * @param s - * @param hostname - * @return int - */ int array_get(array *s, char **hostname); - -/** - * @brief free array's resources - * @param s - */ void array_free(array *s); -- cgit v1.2.3