Skip to content
Extraits de code Groupes Projets
Valider 49733362 rédigé par Arnaud Lefebvre's avatar Arnaud Lefebvre
Parcourir les fichiers

Update fonctions.h

parent 73b897f7
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Pipeline #8719 réussi
#ifndef fonctions_h #ifndef fonctions_h
#define fonctions_h #define fonctions_h
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
#include <unistd.h>
#include <getopt.h>
#include <pthread.h>
#include <semaphore.h>
typedef struct node { typedef struct node {
int value; int value;
struct node *next; struct node *next;
...@@ -23,7 +13,7 @@ typedef struct list { ...@@ -23,7 +13,7 @@ typedef struct list {
} list_t; } list_t;
typedef struct node2 { typedef struct node2 {
list_t *lst; list_t *diviseurs;
struct node2 *next; struct node2 *next;
} node_lst; } node_lst;
...@@ -35,34 +25,33 @@ typedef struct list2 { ...@@ -35,34 +25,33 @@ typedef struct list2 {
typedef struct buffer1 { typedef struct buffer1 {
list_t *numbers; list_t *numbers;
pthread_mutex_t mutex;
sem_t free; sem_t free;
sem_t full; sem_t full;
pthread_mutex_t mutex;
int length; int length;
} buf1; bool is_running;
} buffer1;
typedef struct buffer2 { typedef struct buffer2 {
list_lst *prime_numbers; list_lst *prime_numbers;
pthread_mutex_t mutex;
sem_t free; sem_t free;
sem_t full; sem_t full;
pthread_mutex_t mutex;
int length; int length;
} buf2; bool is_running;
} buffer2;
void include_node_t(list_t *my_list, int val); void init_list_t(list_t *my_list);
void include_node_lst(list_lst *my_list_list, list_t *my_list); void init_list_lst(list_lst *my_list);
int value_at_index(list_t *my_list, int index); void put_node_t(list_t *my_list, int value);
int remove_node_t(list_t *my_list); void put_node_lst(list_lst *my_list, list_t *put_list);
list_t *remove_list_t(list_lst *my_list); int get_node_t(list_t *my_list);
void clear_list_t(list_t *my_list); list_t *get_node_lst(list_lst *my_list);
void clear_list_lst(list_lst *my_list); int get_at_index(list_t *my_list, int index);
int is_div(int chiffre, int div); list_t *prime_list(int value);
int is_prime(int chiffre);
list_t *prime_list(int chiffre);
buf1 *init_buffer_1(int NTHREADS); buffer1 *init_buffer_1(int nthreads);
buf2 *init_buffer_2(int NTHREADS); buffer2 *init_buffer_2(int nthreads);
int count_lines(char *filename); #endif //fonctions_h
#endif /* fonctions_h */ \ No newline at end of file
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter