Utilisation inappropriée du Garbage Collector
Vous êtes le développeur d'une importante application patrimoniale, dans laquelle vous introduisez progressivement PHPStan. On commence par le niveau 0, qui est assez difficile, mais on finit par y arriver. Vous passez aux niveaux suivants, où une partie de votre code commence à signaler une variable $lock inutilisée que vous devriez supprimer.
Le code ressemble à ceci :
public function processOrder(int $orderId): void{$lock = Lock::createLock('commande-' . $orderId);// Il y a une certaine logique ici...}
Vous vous dites qu'il doit y avoir un verrou stocké dans la variable que quelqu'un a oublié de libérer plus tard, ou peut-être que cela se produit dans d'autres méthodes qui sont appelées plus tard. Vous décidez donc de supprimer la variable inutilisée, en ne conservant que l'appel à la méthode statique qui crée le verrou.
Cette décision pourrait-elle provoquer une erreur critique ?
Si oui, pourquoi, et comment le mécanisme original aurait-il pu fonctionner ?
Si non, pourquoi pas, et comment savez-vous que cette opération est toujours sûre ?