在我的应用程序中,多个进程正在尝试访问文件以进行读写。每个应用程序都有一个线程。我需要确保没有 2 个进程同时访问该文件。我在 JDK 中使用 FileLock。这很好用,当一个进程已获得锁定并且其他进程尝试访问文件(用于读取或写入)时抛出异常,说明文件已被其他进程锁定。
现在我需要确保,对于第二个进程,而不是抛出异常线程应该等到第一个进程释放锁,一旦锁被释放,继续它的工作。
我怎样才能做到这一点。所以,胖子我一直没能想出办法做到这一点。
在我的应用程序中,多个进程正在尝试访问文件以进行读写。每个应用程序都有一个线程。我需要确保没有 2 个进程同时访问该文件。我在 JDK 中使用 FileLock。这很好用,当一个进程已获得锁定并且其他进程尝试访问文件(用于读取或写入)时抛出异常,说明文件已被其他进程锁定。
现在我需要确保,对于第二个进程,而不是抛出异常线程应该等到第一个进程释放锁,一旦锁被释放,继续它的工作。
我怎样才能做到这一点。所以,胖子我一直没能想出办法做到这一点。