ReentrantLock.IsHeldByCurrentThread Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Consulta si el subproceso actual mantiene este bloqueo.
public virtual bool IsHeldByCurrentThread { [Android.Runtime.Register("isHeldByCurrentThread", "()Z", "GetIsHeldByCurrentThreadHandler")] get; }
[<get: Android.Runtime.Register("isHeldByCurrentThread", "()Z", "GetIsHeldByCurrentThreadHandler")>]
member this.IsHeldByCurrentThread : bool
Valor de propiedad
true si el subproceso actual contiene este bloqueo y false , de lo contrario,
- Atributos
Comentarios
Consulta si el subproceso actual mantiene este bloqueo.
Análogo al Thread#holdsLock(Object) método para bloqueos de monitor integrados, este método se usa normalmente para la depuración y las pruebas. Por ejemplo, un método al que solo se debe llamar mientras se mantiene un bloqueo puede afirmar que este es el caso:
{@code
class X {
final ReentrantLock lock = new ReentrantLock();
// ...
public void m() {
assert lock.isHeldByCurrentThread();
// ... method body
}
}}
También se puede usar para asegurarse de que se usa un bloqueo reentrante de manera no reentrante, por ejemplo:
{@code
class X {
final ReentrantLock lock = new ReentrantLock();
// ...
public void m() {
assert !lock.isHeldByCurrentThread();
lock.lock();
try {
// ... method body
} finally {
lock.unlock();
}
}
}}
Java documentación para java.util.concurrent.locks.ReentrantLock.isHeldByCurrentThread().
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.