/* By: ljiriste <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/05/09 09:13:40 by ljiriste #+# #+# */
-/* Updated: 2024/05/09 10:39:16 by ljiriste ### ########.fr */
+/* Updated: 2024/05/09 11:59:36 by ljiriste ### ########.fr */
/* */
/* ************************************************************************** */
struct timeval time;
gettimeofday(&time, NULL);
- return ((time.tv_sec - start.tv_sec) * 1000000 + time.tv_usec - start.tv_usec);
+ return ((time.tv_sec - start.tv_sec) * 1000000
+ + time.tv_usec - start.tv_usec);
}
void print_timestamp(t_philo *philo, const char *str)
{
mutex_lock(&philo->settings->terminal_lock);
- printf("%u %lu %s\n", usecs_since_start(philo->settings->start) / 1000 , philo->id, str);
+ printf("%u %lu %s\n", usecs_since_start(philo->settings->start)
+ / 1000, philo->id, str);
mutex_unlock(&philo->settings->terminal_lock);
return ;
}
/* By: ljiriste <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/22 11:19:48 by ljiriste #+# #+# */
-/* Updated: 2024/05/09 11:15:59 by ljiriste ### ########.fr */
+/* Updated: 2024/05/09 11:58:04 by ljiriste ### ########.fr */
/* */
/* ************************************************************************** */
i = 0;
while (i < diner->setting.philo_count)
{
- if (pthread_create(threads + i, NULL, be_a_philosopher, diner->philos + i))
+ if (pthread_create(threads + i, NULL,
+ be_a_philosopher, diner->philos + i))
{
mutex_lock(&diner->setting.end_lock);
diner->setting.end = 1;
int is_dead(t_philo *philo)
{
mutex_lock(&philo->philo_lock);
- if (usecs_since_start(philo->settings->start) - philo->last_eaten > philo->settings->time_to_die)
+ if (usecs_since_start(philo->settings->start) - philo->last_eaten
+ > philo->settings->time_to_die)
{
mutex_unlock(&philo->philo_lock);
return (1);
/* By: ljiriste <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/28 09:39:55 by ljiriste #+# #+# */
-/* Updated: 2024/05/09 11:18:43 by ljiriste ### ########.fr */
+/* Updated: 2024/05/09 11:56:50 by ljiriste ### ########.fr */
/* */
/* ************************************************************************** */
destroy_mutex(&diner->setting.end_lock);
i = 0;
if (diner->philos)
+ {
while (i < count)
{
pthread_join(threads[i], NULL);
destroy_mutex(&diner->philos[i++].philo_lock);
}
+ }
i = 0;
if (diner->forks)
while (i < count)