Este projeto simula um sistema de atendimento de clientes com múltiplos atendentes, utilizando programação concorrente em C com pthreads. O programa cria uma fila circular protegida por mutex e sincronizada por cond vars, onde clientes são inseridos com tempos de atendimento aleatórios e processados por threads atendentes.
- Programação concorrente com POSIX Threads (
pthread) - Exclusão mútua com
pthread_mutex_t - Sincronização com
pthread_cond_t - Estrutura de dados: Fila circular
- Comunicação entre produtor e consumidores (Producer-Consumer Problem)
Certifique-se de que você possui o GCC instalado.
makeOu compile manualmente:
gcc -o atendimento main.c fila.c -lpthread./atendimento📦 projeto
├── main.c # Código principal com as threads produtoras e consumidoras
├── fila.c # Implementação da fila circular
├── fila.h # Header com a definição da estrutura Fila e Cliente
├── Makefile # Para facilitar a compilação
└── README.md # Este arquivo