# Verrouillage de l'interface

Les interfaces de ce chapitre sont utilisées pour verrouiller toutes les interfaces de l'API, vous permettant de restreindre leur utilisation à l'instance `Device` actuelle. Cela empêche l'API d'être utilisée par d'autres utilisateurs ou processus. Vous pouvez définir une durée de verrouillage par défaut ou rafraîchir le verrou périodiquement vous-même. La méthode de rafraîchissement périodique est recommandée. Vous pouvez également libérer le verrou de l'interface de manière active. Un processus de verrouillage fiable est le suivant : Obtenir le verrou -> Créer un thread pour rafraîchir périodiquement le verrou -> Libérer le verrou.

## Obtenir le verrou

Obtient le verrou. Ce verrou sera automatiquement libéré après 60 secondes. Après sa libération automatique, d'autres clients pourront obtenir le verrou. Vous pouvez modifier cette durée, mais si elle est trop élevée et que le script se termine de manière anormale, vous ne pourrez presque plus jamais vous connecter à l'appareil, et un redémarrage pourrait être nécessaire pour rétablir la connexion. Cette interface est réentrante ; un nouvel appel équivaut à `_refresh_lock`.

```python
d._acquire_lock(leaseTime=60)
```

## Libérer le verrou

Libère activement le verrou de l'API, permettant ainsi à d'autres clients d'obtenir le verrou.

```python
d._release_lock()
```

## Rafraîchir le verrou

Rafraîchit le verrou. Chaque appel définit le temps d'expiration du verrou à la valeur de `leaseTime`. Appelez cette interface périodiquement pour maintenir le verrouillage de l'API. De même, si `leaseTime` est trop élevé et que le script se termine de manière anormale, vous ne pourrez presque plus jamais vous connecter à l'appareil.

```python
d._refresh_lock(leaseTime=60)
```