Verificando se o arquivo está completamente escrito [duplicado]

Esta questão já tem uma resposta aqui:

Como testar se um arquivo está “completo” (completamente escrito) com Java 8 respostas

Atualmente estou trabalhando no projeto que faz o processamento de arquivos do diretório de origem em uma de suas rotinas. Existe um processo Java que está procurando pelo diretório especificado e tenta ler e processar arquivos, se existirem. Os arquivos são largos e atualizados por outro processo de terceiros. A questão é como posso verificar se o arquivo está completamente escrito? Estou tentando usarfile.length() mas parece que, mesmo que o processo de escrita não tenha sido concluído, ele retorna o tamanho real. Tenho a sensação de que a solução deve ser dependente da plataforma. Qualquer ajuda seria apreciada.

ATUALIZAÇÃO: Esta questão não é realmente diferente da duplicada, mas tem uma resposta com o snippet de código em funcionamento que é altamente classificado.