Região crítica: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Erros de ortografia consertados!
Correção de erro de palavra errada.
Etiquetas: Edição via dispositivo móvel Edição feita através do sítio móvel
Linha 1:
Em [[programação concorrente]], uma '''região crítica''' - também conhecida por {{PBPE|seção crítica|secção crítica}} - é uma área de código de um [[algoritmo]] que acedeacessa um recurso compartilhado que não pode ser acedido [[concorrência (informática)|concorrentemente]] por mais de uma [[linha de execução]]. O objetivo é tornar a operação sobre o recurso compartilhado [[Transação atômica|atômica]]. Uma região crítica geralmente termina num tempo específico, e uma linha de execução ou [[processo (informática)|processo]] só precisa esperar um tempo específico para entrá-la. Algum mecanismo de [[sincronização]] é necessário para implementar a entrada e a saída duma região crítica para assegurar o uso exclusivo, como por exemplo um [[Semáforo (computação)|semáforo]].
 
O acesso concorrente pode ser evitado ao controlar cuidadosamente quais [[variável (programação)|variáveis]] são modificadas dentro e fora a região crítica. Uma região crítica é geralmente usada quando um programa [[multitarefa]] deve atualizar diversas variáveis relacionadas sem que outra linha de execução faça modificações conflitantes nos dados. Numa situação relacionada, uma região crítica também pode ser usada para assegurar que um recurso compartilhado como uma [[impressora]] seja acedidoacessado por somente um processo a cada vez.
 
A definição da região crítica é importante para a implementação de [[exclusão mútua]], usada para evitar [[condição de corrida|condições de corrida]].