debut implementation death tout est casse

This commit is contained in:
Hugo LAMY
2022-01-21 18:32:37 +01:00
parent be439700e9
commit 6a4aad9503
12 changed files with 107 additions and 214 deletions

View File

@@ -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);
}