Heim >Java >javaLernprogramm >Wie sperre ich eine Datei in Java, um gleichzeitigen Zugriff zu verhindern?

Wie sperre ich eine Datei in Java, um gleichzeitigen Zugriff zu verhindern?

Linda Hamilton
Linda HamiltonOriginal
2024-12-29 07:58:11731Durchsuche

How to Lock a File in Java to Prevent Concurrent Access?

Dateisperrung in Java

F: Wie kann ich eine Datei in Java sperren, um den Zugriff durch andere Prozesse zu verhindern?

A:

Um zu verhindern, dass ein anderer Prozess auf eine geöffnete Datei zugreift, verwenden Sie die FileChannel.lock()-Methode. So geht's:

try (
    FileInputStream in = new FileInputStream(file);
    FileLock lock = in.getChannel().lock();
    Reader reader = new InputStreamReader(in, charset)
) {
    ...
}

Das von lock() erhaltene FileLock-Objekt stellt die erworbene Sperre dar. Beachten Sie, dass das Sperrverhalten je nach Plattform unterschiedlich sein kann, wie in der FileLock-API-Dokumentation angegeben.

Das obige ist der detaillierte Inhalt vonWie sperre ich eine Datei in Java, um gleichzeitigen Zugriff zu verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn