erreur lors des arrets
This commit is contained in:
25
srcs/main.c
25
srcs/main.c
@@ -13,32 +13,21 @@ void launch_threads(t_philo *philo, pthread_t *id)
|
||||
}
|
||||
}
|
||||
|
||||
void watch_threads(t_philo *philo, pthread_t *id)
|
||||
{
|
||||
int i;
|
||||
|
||||
i = 0;
|
||||
while (1)
|
||||
{
|
||||
if (is_dead(philo) == 1)
|
||||
break ;
|
||||
}
|
||||
while (i < philo->params->n_phi)
|
||||
{
|
||||
pthread_join(id[i], NULL);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
int main(int ac, char **av)
|
||||
{
|
||||
pthread_t *id;
|
||||
t_philo *philo;
|
||||
int i;
|
||||
|
||||
philo = init(ac, av, &id);
|
||||
if (philo == NULL)
|
||||
return (0);
|
||||
launch_threads(philo, id);
|
||||
watch_threads(philo, id);
|
||||
i = 0;
|
||||
while (i < philo->params->n_phi)
|
||||
{
|
||||
pthread_join(id[i], NULL);
|
||||
i++;
|
||||
}
|
||||
return (0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user