ReentrantLock.IsHeldByCurrentThread Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Kueri jika kunci ini dipegang oleh utas saat ini.
public virtual bool IsHeldByCurrentThread { [Android.Runtime.Register("isHeldByCurrentThread", "()Z", "GetIsHeldByCurrentThreadHandler")] get; }
[<get: Android.Runtime.Register("isHeldByCurrentThread", "()Z", "GetIsHeldByCurrentThreadHandler")>]
member this.IsHeldByCurrentThread : bool
Nilai Properti
true jika utas saat ini memegang kunci ini dan false sebaliknya
- Atribut
Keterangan
Kueri jika kunci ini dipegang oleh utas saat ini.
Analog dengan Thread#holdsLock(Object) metode untuk kunci monitor bawaan, metode ini biasanya digunakan untuk penelusuran kesalahan dan pengujian. Misalnya, metode yang hanya boleh dipanggil saat kunci ditahan dapat menegaskan bahwa ini adalah kasusnya:
{@code
class X {
final ReentrantLock lock = new ReentrantLock();
// ...
public void m() {
assert lock.isHeldByCurrentThread();
// ... method body
}
}}
Ini juga dapat digunakan untuk memastikan bahwa kunci masuk kembali digunakan dengan cara yang tidak masuk kembali, misalnya:
{@code
class X {
final ReentrantLock lock = new ReentrantLock();
// ...
public void m() {
assert !lock.isHeldByCurrentThread();
lock.lock();
try {
// ... method body
} finally {
lock.unlock();
}
}
}}
Java dokumentasi untuk java.util.concurrent.locks.ReentrantLock.isHeldByCurrentThread().
Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.