debut implementation death tout est casse
This commit is contained in:
32
srcs/main.c
32
srcs/main.c
@@ -1,14 +1,26 @@
|
||||
#include "philo.h"
|
||||
|
||||
void launch_threads(t_philo *philo, pthread_t *id, int n)
|
||||
void launch_threads(t_philo *philo, pthread_t *id)
|
||||
{
|
||||
int i;
|
||||
|
||||
i = 0;
|
||||
while (i < philo->params->n_phi)
|
||||
{
|
||||
pthread_create(&id[i], NULL, &philo_exec, philo);
|
||||
philo = philo->next;
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
void watch_threads(t_philo *philo, pthread_t *id)
|
||||
{
|
||||
int i;
|
||||
|
||||
i = 0;
|
||||
while (i < n)
|
||||
while (i < philo->params->n_phi)
|
||||
{
|
||||
pthread_create(&id[i], NULL, &philo_exec, philo);
|
||||
philo = philo->next;
|
||||
pthread_join(id[i], NULL);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
@@ -17,20 +29,12 @@ int main(int ac, char **av)
|
||||
{
|
||||
pthread_t *id;
|
||||
t_philo *philo;
|
||||
int i;
|
||||
int n;
|
||||
|
||||
philo = init(ac, av, &id);
|
||||
if (philo == NULL)
|
||||
return (0);
|
||||
n = philo->params->n_phi;
|
||||
launch_threads(philo, id, n);
|
||||
i = 0;
|
||||
while (i < n)
|
||||
{
|
||||
pthread_join(id[i], NULL);
|
||||
i++;
|
||||
}
|
||||
launch_threads(philo, id);
|
||||
watch_threads(philo, id);
|
||||
write(1, "main function\n", 14);
|
||||
return (0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user