Does File.delete in java perform file locking?

2019-08-30 02:35发布

问题:

  1. Does it lock the file before it deletes it?
  2. Does it need to?
  3. If it does not perform file locking how can I make it safe between multiple processes?

回答1:

Maybe this link will explain better. As far as I understand, deletion is an atomic operation so it does not need to lock the file. However, upon looking further, I found this link which shows the OS dependent nature of the delete operation. On Windows, it will necessarily need the file to be without a lock to delete it while on Linux you can delete a file while another process is using it.