projeto em C Skill Tree

Sincronizar Impressão Multithread com Mutex

Iniciante

Neste projeto, você aprenderá como usar mutex para sincronizar a impressão de strings em um ambiente multithread. Você modificará um programa existente 'Máquina de Escrever Caótica' para garantir que as strings sejam impressas na sequência correta, sem qualquer mistura de letras.

c

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Introdução

Neste projeto, você aprenderá como usar mutex para sincronizar a impressão de strings em um ambiente multi-threaded. Você modificará um programa "Chaotic Typewriter" existente para garantir que as strings sejam impressas na sequência correta, sem qualquer mistura de letras.

👀 Visualização

$ gcc printer.c -o printer -lpthread
$ ./printer
helloworld

🎯 Tarefas

Neste projeto, você aprenderá:

  • Como inicializar um mutex na função init()
  • Como bloquear (lock) e desbloquear (unlock) o mutex na função printer() para garantir acesso exclusivo ao processo de impressão
  • Como compilar e executar o programa modificado para observar a saída correta

🏆 Conquistas

Após concluir este projeto, você será capaz de:

  • Entender a importância do mutex na sincronização do acesso a recursos compartilhados em um programa multi-threaded
  • Aplicar técnicas de bloqueio (locking) e desbloqueio (unlocking) de mutex para coordenar a execução de múltiplos threads
  • Solucionar problemas e corrigir questões em um programa multi-threaded para obter a saída desejada

Professor

labby
Labby
Labby is the LabEx teacher.