Langue

FileChannel.TryLock Méthode

Définition

Surcharges

Nom Description
TryLock()

Tente d’acquérir un verrou exclusif sur le fichier de ce canal.

TryLock(Int64, Int64, Boolean)

Tente d’acquérir un verrou sur la région donnée du fichier de ce canal.

TryLock()

Tente d’acquérir un verrou exclusif sur le fichier de ce canal.

[Android.Runtime.Register("tryLock", "()Ljava/nio/channels/FileLock;", "")]
public Java.Nio.Channels.FileLock? TryLock();
[<Android.Runtime.Register("tryLock", "()Ljava/nio/channels/FileLock;", "")>]
member this.TryLock : unit -> Java.Nio.Channels.FileLock

Retours

Objet de verrou représentant le verrou nouvellement acquis ou null si le verrou n’a pas pu être acquis, car un autre programme contient un verrou qui se chevauche

Attributs

Exceptions

si le canal de fichier est fermé.

si un verrou existe déjà qui chevauche cette demande de verrouillage ou qu’un autre thread attend d’acquérir un verrou qui chevauche cette demande.

si une erreur d’E/S se produit.

Remarques

Tente d’acquérir un verrou exclusif sur le fichier de ce canal.

Un appel de cette méthode du formulaire fc.tryLock() se comporte exactement de la même façon que l’appel

fc.{@link #tryLock(long,long,boolean) tryLock}(0L, Long.MAX_VALUE, false)

Documentation Java pour java.nio.channels.FileChannel.tryLock().

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à

TryLock(Int64, Int64, Boolean)

Tente d’acquérir un verrou sur la région donnée du fichier de ce canal.

[Android.Runtime.Register("tryLock", "(JJZ)Ljava/nio/channels/FileLock;", "GetTryLock_JJZHandler")]
public abstract Java.Nio.Channels.FileLock? TryLock(long position, long size, bool shared);
[<Android.Runtime.Register("tryLock", "(JJZ)Ljava/nio/channels/FileLock;", "GetTryLock_JJZHandler")>]
abstract member TryLock : int64 * int64 * bool -> Java.Nio.Channels.FileLock

Paramètres

position
Int64

Position à laquelle la région verrouillée doit démarrer ; doit être non négatif

size
Int64

Taille de la région verrouillée ; doit être non négatif, et la somme position  ;+  ;size doit être non négative

shared
Boolean

true pour demander un verrou partagé, false pour demander un verrou exclusif

Retours

Objet de verrou représentant le verrou nouvellement acquis ou null si le verrou n’a pas pu être acquis, car un autre programme contient un verrou qui se chevauche

Attributs

Exceptions

si des paramètres ne sont pas valides.

si le canal de fichier est fermé.

si un verrou est déjà conservé qui chevauche cette demande de verrouillage ou qu’un autre thread attend d’acquérir un verrou qui se chevauchera avec cette demande.

si une erreur d’E/S se produit.

Remarques

Tente d’acquérir un verrou sur la région donnée du fichier de ce canal.

Cette méthode ne bloque pas. Un appel retourne toujours immédiatement, soit après avoir acquis un verrou sur la région demandée, soit n’ayant pas pu le faire. S’il ne parvient pas à acquérir un verrou, car un verrou qui se chevauche est détenu par un autre programme, il retourne null. S’il ne parvient pas à acquérir un verrou pour une autre raison, une exception appropriée est levée.

La région spécifiée par les paramètres et position ne size doit pas être contenue dans le fichier sous-jacent réel, ni même se chevaucher. Les régions de verrouillage sont fixes en taille ; si une région verrouillée contient initialement la fin du fichier et que le fichier dépasse la région, la nouvelle partie du fichier ne sera pas couverte par le verrou. Si un fichier devrait augmenter de taille et qu’un verrou sur l’ensemble du fichier est nécessaire, une région commençant à zéro, et pas plus petite que la taille maximale attendue du fichier, doit être verrouillée. La méthode d’argument #tryLock() zéro verrouille simplement une région de taille Long#MAX_VALUE.

Certains systèmes d’exploitation ne prennent pas en charge les verrous partagés, auquel cas une demande de verrouillage partagé est automatiquement convertie en demande de verrou exclusif. Si le verrou nouvellement acquis est partagé ou exclusif peut être testé en appelant la méthode de l’objet de FileLock#isShared() isShared verrou résultant.

Les verrous de fichier sont conservés au nom de l’ensemble de la machine virtuelle Java. Ils ne conviennent pas pour contrôler l’accès à un fichier par plusieurs threads au sein de la même machine virtuelle.

Documentation Java pour java.nio.channels.FileChannel.tryLock(long, long, boolean).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à