レコードを保存するために使用する 10 個のテキスト ファイルがあります。私のアプリケーションでは、ファイルへの書き込みとファイルの編集など、いくつかの操作があります(指定された行が見つかった場合は、一時ファイルを作成してそこにすべての情報を転送し、古いものを削除して一時ファイルの名前を変更します)。
すべてのクライアントが 10 個のテキスト ファイルにアクセスできるため、データの一貫性を維持するためにアクティビティを同期したいと考えています。
クライアントがファイルを編集または書き込みしている場合、たとえば f1.txt をロックまたは同期して、他のクライアントが同時に f2.txt を編集できるようにすることで、他のユーザーが書き込み/編集できず、同時実行性を高めたいと考えています。
public void writeToFile(String pathname){
File f1 = new File(pathname)
synchronize (f1) {.. // do something}
}
ここでの問題は、特定のパスで毎回新しいファイルを作成していることです。
ガイダンスとヘルプをいただければ幸いです。これでよろしいですか。
ありがとう