Estou desenvolvendo uma aplicação em java e estou tendo que implementar concorrencia para o acesso a um determinado arquivo.
Eu pensei em criar um arquivo tranca, e sempre que uma das aplicações fosse acessar o recurso comum, ela criaria esse arquvo tranca. Ja a outra aplicação percebendo a existencia desse arquivo tranca esperaria x ms.
Isso é tranquilo de se fazer e era o que ja estava implementando. Só que ai eu lembrei do metodo canRead. Mas me veio a cabça o seguinte, se eu usar canRead o SO que cuidaria em “dizer” que o arquivo esta sendo escrito no momento e retornaria false ou ele só tentaria abrir o arquivo e caso conseguisse retornaria true?
Será que consego fazer o que quero com canRead ou terei que usar o arquivo de lock mesmo?
Alguem tem ideia melhor?