Este repositório contém uma série de exercícios e exemplos práticos para a disciplina de Programação Concorrente. O objetivo é fornecer recursos educacionais para ajudar estudantes e desenvolvedores a entender e dominar os conceitos fundamentais da programação concorrente, incluindo multithreading, paralelismo, sincronização e gestão de recursos.
O repositório está organizado em diferentes seções, cada uma focada em um aspecto específico da programação concorrente:
- 🌟 Introdução à Concorrência: Exercícios básicos para entender os conceitos fundamentais de concorrência e paralelismo.
- 🧵 Multithreading: Exemplos e exercícios que demonstram a criação e gestão de múltiplas threads.
- 🔒 Sincronização: Técnicas para evitar condições de corrida e outros problemas de sincronização usando mutexes, semáforos e outros mecanismos.
- 📡 Comunicação entre Threads: Exemplos de como as threads podem se comunicar de forma segura e eficiente.
- 📊 Paralelismo de Dados: Exercícios focados em dividir tarefas de processamento de dados entre múltiplas threads para aumentar a eficiência.
- 📋 Estudo de Casos: Análise de problemas reais e como resolvê-los utilizando programação concorrente.
Espero que este repositório seja uma ferramenta valiosa para sua jornada de aprendizado em programação concorrente! 🚀