【发布时间】:2019-09-02 10:01:00
【问题描述】:
我正在编写两个通过文本文件进行通信的程序。第一个程序写入文件,第二个程序读取文件。但是,当 reader 程序尝试从文件中读取而 writer 仍在写入并读取不一致的数据时,就会出现问题。有没有办法同步两个不同 JVM 的读/写?
【问题讨论】:
-
这种方法有什么原因吗?你有使用文本文件吗?
-
是的,我必须使用文本文件。
-
你能告诉使用为什么吗?为什么不是插座?为什么不是消息传递库?
-
这不取决于我。作为更大项目的一部分,我被分配了这项特定任务。
-
您可以使用文件锁 (stackoverflow.com/questions/128038/…) 持有锁的 JVM 是有权访问文件的那个。其他 JVM 会定期轮询文件,尝试获取锁。
标签: java concurrency