1. Présentation
Le verrouillage, lorsqu'il est utilisé, acquiert et libère manuellement les verrous, ce qui est plus flexible que synchronisé ;
Lock Utilisation de base du verrou, méthode l.lock() pour verrouiller, méthode l.unlock() pour déverrouiller, comme indiqué ci-dessous.
Lock l = ...; l.lock(); // 上锁 try { // access the resource protected by this lock } finally { l.unlock(); // 解锁 }
2. Exemple
En utilisant Lock, vous devez activement libérer le verrou, et lorsqu'une exception se produit, le verrou ne sera pas automatiquement libéré. Par conséquent, de manière générale, l'utilisation de Lock doit être effectuée dans le bloc try{}catch{}, et l'opération de libération du verrou doit être effectuée dans le bloc final pour garantir que le verrou doit être libéré et empêcher l'apparition d'impasse. Habituellement, si Lock est utilisé pour la synchronisation, il est utilisé sous la forme suivante :
Lock lock = ...; lock.lock(); try{ //处理任务 }catch(Exception ex){ }finally{ lock.unlock(); //释放锁 }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!