Freigeben über


FileChannel.Force(Boolean) Methode

Definition

Erzwingt, dass alle Aktualisierungen der Datei dieses Kanals auf das Speichergerät geschrieben werden, das sie enthält.

[Android.Runtime.Register("force", "(Z)V", "GetForce_ZHandler")]
public abstract void Force (bool metaData);
[<Android.Runtime.Register("force", "(Z)V", "GetForce_ZHandler")>]
abstract member Force : bool -> unit

Parameter

metaData
Boolean

Wenn true diese Methode erforderlich ist, um Änderungen an den Inhalten und Metadaten der Datei zu erzwingen, die in den Speicher geschrieben werden sollen. Andernfalls müssen nur Inhaltsänderungen erzwungen werden, um geschrieben zu werden.

Attribute

Ausnahmen

wenn dieser Kanal bereits geschlossen ist.

wenn ein anderer E/A-Fehler auftritt.

Hinweise

Erzwingt, dass alle Aktualisierungen der Datei dieses Kanals auf das Speichergerät geschrieben werden, das sie enthält.

Wenn sich die Datei dieses Kanals auf einem lokalen Speichergerät befindet, wird sichergestellt, dass alle An der Datei vorgenommenen Änderungen seit der Erstellung dieses Kanals oder seit dem letzten Aufruf dieser Methode auf dieses Gerät geschrieben wurden. Dies ist nützlich, um sicherzustellen, dass wichtige Informationen im Falle eines Systemabsturzes nicht verloren gehen.

Wenn sich die Datei nicht auf einem lokalen Gerät befindet, wird keine solche Garantie gewährleistet.

Der metaData Parameter kann verwendet werden, um die Anzahl der E/A-Vorgänge einzuschränken, die diese Methode ausführen muss. Die Übergabe für diesen Parameter gibt an, dass nur Aktualisierungen des Dateiinhalts in den Speicher geschrieben werden müssen. Durch false Übergeben true wird angegeben, dass Aktualisierungen sowohl des Inhalts als auch der Metadaten der Datei geschrieben werden müssen, was in der Regel mindestens einen weiteren E/A-Vorgang erfordert. Ob dieser Parameter tatsächlich Auswirkungen hat, hängt vom zugrunde liegenden Betriebssystem ab und ist daher nicht angegeben.

Das Aufrufen dieser Methode kann dazu führen, dass ein E/A-Vorgang auftritt, auch wenn der Kanal nur zum Lesen geöffnet wurde. Bei einigen Betriebssystemen wird beispielsweise eine Zeit für den letzten Zugriff als Teil der Metadaten einer Datei beibehalten, und diese Zeit wird aktualisiert, wenn die Datei gelesen wird. Ob dies tatsächlich erfolgt, ist systemabhängig und daher nicht angegeben.

Diese Methode wird nur garantiert, änderungen zu erzwingen, die über die in dieser Klasse definierten Methoden an der Datei dieses Kanals vorgenommen wurden. Sie kann änderungen erzwingen#map map, die vorgenommen wurden, indem sie den Inhalt eines MappedByteBuffer <i>mapped byte buffer</i> abgerufenen Verfahrens ändern. Durch Aufrufen der MappedByteBuffer#force force Methode des zugeordneten Bytepuffers werden Änderungen erzwungen, die an den Inhalten des Puffers vorgenommen wurden.

Java-Dokumentation für java.nio.channels.FileChannel.force(boolean).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: