Rumah > Java > javaTutorial > teks badan

Apakah kaedah pemerolehan kunci di Jawa?

王林
Lepaskan: 2023-05-19 13:13:06
ke hadapan
2004 orang telah melayarinya

1. Kaedah pemerolehan

kunci(), tryLock(), tryLock(masa lama, unit TimeUnit) dan lockInterruptibly() semuanya digunakan untuk memperoleh kunci.

(1) Kaedah lock() ialah kaedah yang paling biasa digunakan, yang digunakan untuk mendapatkan kunci. Jika kunci telah diperolehi oleh benang lain, tunggu.

(2) Kaedah tryLock() mempunyai nilai pulangan, yang bermaksud ia digunakan untuk cuba memperoleh kunci Jika pemerolehan berjaya, ia akan kembali benar pemerolehan gagal (iaitu, kunci telah diperoleh oleh pemerolehan Thread lain), ia mengembalikan palsu, yang bermaksud bahawa kaedah ini akan kembali serta-merta tidak kira apa. Anda tidak akan menunggu di sana apabila anda tidak boleh mendapatkan kunci.

(3) Kaedah tryLock(masa lama, unit TimeUnit) adalah serupa dengan kaedah tryLock(), tetapi satu-satunya perbezaan ialah kaedah ini akan menunggu untuk tempoh masa tertentu apabila ia tidak mendapat kunci , jika kunci tidak dapat diperoleh dalam had masa, palsu akan dikembalikan. Mengembalikan benar jika kunci diperoleh pada mulanya atau semasa tempoh menunggu.

(4) Kaedah lockInterruptibly() adalah istimewa Apabila memperoleh kunci melalui kaedah ini, jika benang sedang menunggu untuk memperoleh kunci, benang boleh bertindak balas kepada gangguan, iaitu, mencelah. keadaan menunggu benang. Dalam erti kata lain, apabila dua utas ingin memperoleh kunci melalui lock.lockInterruptibly() pada masa yang sama, jika thread A memperoleh kunci pada masa ini dan thread B hanya menunggu, maka threadB.interrupt dipanggil benang B. Kaedah () boleh mengganggu proses menunggu benang B.

2. Contoh

Ambil trylock sebagai contoh.

rreeee

Atas ialah kandungan terperinci Apakah kaedah pemerolehan kunci di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan