fjorgemota / programacao-concorrente-ufsc-2014-2

Códigos de Programação Concorrente. Pois a concorrência aqui é brava.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Adicionar mutexes

fjorgemota opened this issue · comments

Falta adicionar mutexes no trabalho-basico.c, para garantir que condições de corrida sejam evitadas ao somar na variável global!

@Caique-Marques . Acho que essa é tranquila para você pegar para fazer enquanto eu estiver fora.

Parece ser bem simples, e, como o seu notebook aparentemente é a prova de condição de corrida, indico apenas adicionar suporte à mutexes como garantia mesmo (ou seja, mantendo o funcionamento do algoritmo tá excelente)

Os mutex foram adicionados, mantendo o funcionamento do algoritmo. Se puder, verifique e avise-me caso a condição de corrida não foi solucionada.

Oi Caíque. Você acha necessário envolver o mutex n também com a variável local resultado e com o printf? Eu acho que a área crítica do código é um pouco menor, hein? (dica: veja as variáveis GLOBAIS que podem ser usadas nas threads). Qualquer pergunta posta aqui.

Cada variável impressa tem seus próprios valores (faz parte da 'estrutura' da thread), portanto, não faz sentido impor restrições para cada, descuido meu! Portanto, deve-se apenas verificar a variável sum - que é compartilhada.

Correto o pensamento, Caíque.

Consegue fazer o commit e seu respectivo push? Não vi a alteração aqui.

Como o commit já foi feito. Vou assumir a tarefa e tentar testar o código com e sem os mutexes. Quando a diferença for realmente testada fecharei essa issue (ou seja, marcarei ela como concluída)

Yay. Mutexes testados: Tá tudo funfando conforme esperado e condições de corrida estão sendo completamente evitadas. Fechando issue, portanto. :D