Para evitar esse tipo de problema, algumas aplicações realizam o controle de travamento do arquivo (“lock” em inglês). Esse travamento nada mais é do que sinalizar no arquivo que, naquele momento, algum usuário está abrindo-o para edição. Nessa situação, esse usuário é o “proprietário” do arquivo, somente ele pode alterar o arquivo. Qualquer outra pessoa que tente abrir o arquivo nesse momento o aplicativo irá informar que o arquivo já está aberto para outro usuário e que ele deve esperar até que o primeiro usuário termine as edições ou que ele abre uma “cópia” do arquivo original. Isso já é suficiente para sinalizar ao segundo usuário que ele pode estar vendo uma informação não atualizada, e que o melhor é aguardar que o primeiro usuário salve o arquivo.
Os programasdo Microsoft Office, por exemplo, fazem esse tipo de controle. Se vocêabrir um documento de texto (.doc ou docx) e outra pessoa tentar abrir o mesmo arquivo enquanto o seu está aberto, o sistema irá gerar um alerta para esse segundo usuário. Veja abaixo como o MS Word gera esse tipo de alerta:
Algumas ferramentas são tão modernas que permitem que vários usuários alterem o mesmo documento, e ao final, pergunta para o último usuário a salvar o arquivo quais alterações devem vigorar. Ou seja, permite mesclar os resultados de alteração dos vários usuários. Saiba+
Quando você for criar um programa de computador que trabalhe com arquivos, e esse programa aceitar essa situação de mais de uma pessoa alterando o mesmo arquivo, você precisará implementar no seu programa controles adicionais que bloqueiem a dupla edição ou que realizem a mescla ao final da edição.
É importante ressaltar que as modernas linguagens de programação já implementam as funcionalidades de controle de edição de arquivo, então, cabe ao programador apenas garantir que esses controles irão existir e a respectiva configuração deles.