Apakah ada objek Mutex di java atau cara membuatnya? Saya bertanya karena objek Semaphore yang diinisialisasi dengan 1 izin tidak membantu saya. Pikirkan kasus ini:
try {
semaphore.acquire();
//do stuff
semaphore.release();
} catch (Exception e) {
semaphore.release();
}
jika pengecualian terjadi pada perolehan pertama, rilis di blok catch akan meningkatkan izin, dan semaphore tidak lagi menjadi semaphore biner.
Akankah cara yang benar?
try {
semaphore.acquire();
//do stuff
} catch (Exception e) {
//exception stuff
} finally {
semaphore.release();
}
Akankah kode di atas memastikan bahwa semaphore akan menjadi biner?