Compartir a través de


ILock.LockInterruptibly Método

Definición

Adquiere el bloqueo a menos que se interrumpa el subproceso actual.

[Android.Runtime.Register("lockInterruptibly", "()V", "GetLockInterruptiblyHandler:Java.Util.Concurrent.Locks.ILockInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void LockInterruptibly ();
[<Android.Runtime.Register("lockInterruptibly", "()V", "GetLockInterruptiblyHandler:Java.Util.Concurrent.Locks.ILockInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member LockInterruptibly : unit -> unit
Atributos

Excepciones

si se interrumpe el subproceso actual al adquirir el bloqueo (y se admite la interrupción de la adquisición de bloqueos)

Comentarios

Adquiere el bloqueo a menos que se interrumpa el subproceso actual.

Adquiere el bloqueo si está disponible y devuelve inmediatamente.

Si el bloqueo no está disponible, el subproceso actual se deshabilita con fines de programación de subprocesos y permanece inactivo hasta que se produzca una de estas dos cosas:

<ul><li>El bloqueo lo adquiere el subproceso actual; o <li>Otros subprocesos Thread#interrupt interrumpen el subproceso actual y se admite la interrupción de la adquisición de bloqueos. </ul>

Si el subproceso actual: <ul><li>tiene su estado interrumpido establecido en la entrada a este método; o <li>es Thread#interrupt interrumpida al adquirir el bloqueo y se admite la interrupción de la adquisición de bloqueo, </ul InterruptedException> se produce y se borra el estado interrumpido del subproceso actual.

<b>Consideraciones de< implementación/b>

Es posible que la capacidad de interrumpir una adquisición de bloqueos en algunas implementaciones no sea posible y, si es posible, puede ser una operación costosa. El programador debe tener en cuenta que esto puede ser el caso. Una implementación debe documentar cuándo es el caso.

Una implementación puede favorecer la respuesta a una interrupción sobre el retorno del método normal.

Una Lock implementación puede detectar el uso erróneo del bloqueo, como una invocación que provocaría interbloqueo y podría producir una excepción (desactivada) en tales circunstancias. La implementación debe documentar Lock las circunstancias y el tipo de excepción.

Documentación de Java para java.util.concurrent.locks.Lock.lockInterruptibly().

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a