Compartilhar via


FileChannel.Force(Boolean) Método

Definição

Força quaisquer atualizações no arquivo desse canal a serem gravadas no dispositivo de armazenamento que o contém.

[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

Parâmetros

metaData
Boolean

Se true , em seguida, esse método for necessário para forçar as alterações no conteúdo do arquivo e nos metadados a serem gravados no armazenamento, caso contrário, ele precisará apenas forçar as alterações de conteúdo a serem gravadas

Atributos

Exceções

se este canal já estiver fechado.

se ocorrer outro erro de E/S.

Comentários

Força quaisquer atualizações no arquivo desse canal a serem gravadas no dispositivo de armazenamento que o contém.

Se o arquivo desse canal residir em um dispositivo de armazenamento local, quando esse método retornar, é garantido que todas as alterações feitas no arquivo desde que esse canal foi criado, ou desde que esse método foi invocado pela última vez, terão sido gravadas nesse dispositivo. Isso é útil para garantir que informações críticas não sejam perdidas em caso de falha do sistema.

Se o arquivo não residir em um dispositivo local, então nenhuma garantia é feita.

O metaData parâmetro pode ser usado para limitar o número de operações de E/S que esse método é necessário executar. Passar false para esse parâmetro indica que apenas as atualizações do conteúdo do arquivo precisam ser gravadas no armazenamento, e passar true indica que as atualizações do conteúdo e dos metadados do arquivo devem ser gravadas, o que geralmente requer pelo menos mais uma operação de E/S. Se esse parâmetro realmente tem algum efeito depende do sistema operacional subjacente e, portanto, não é especificado.

Invocar esse método pode fazer com que uma operação de E/S ocorra mesmo se o canal foi aberto apenas para leitura. Alguns sistemas operacionais, por exemplo, mantêm um tempo de último acesso como parte dos metadados de um arquivo, e esse tempo é atualizado sempre que o arquivo é lido. Se isso é realmente feito ou não, depende do sistema e, portanto, não é especificado.

Esse método só é garantido para forçar as alterações que foram feitas no arquivo deste canal por meio dos métodos definidos nesta classe. Ele pode ou não forçar alterações que foram feitas modificando o conteúdo de um MappedByteBuffer <i>mapped byte buffer</i> obtido invocando o #map map método. Invocar o MappedByteBuffer#force force método do buffer de bytes mapeado forçará as alterações feitas no conteúdo do buffer a serem gravadas.

Documentação Java para java.nio.channels.FileChannel.force(boolean).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Aplica-se a