No contexto da utilização de recursos compartilhados entre aplicações diferentes, é fundamental que exista alguma forma de comunicação que evite a disputa pelo uso dos recursos em processos que são executados de forma concorrente. Problemas no acesso a recursos compartilhados podem causar uma série de problemas, como a finalização involuntária dos aplicativos em execução ou até mesmo a geração de resultados incorretos após o processamento.
|
O que aconteceria se o produtor tentasse gravar uma nova informação num espaço de memória ainda ocupado? E qual seria o resultado se o consumidor tentasse ler o espaço compartilhado antes da gravação das informações? Situações como esta, onde o resultado do processamento depende da sequência em que um determinado recurso compartilhado é acessado pelos processos, são denominadas condições de corrida. |