Partager via


Nettoyage côté serveur

Imaginez le scénario suivant :

Un client ouvre un handle de contexte, puis arrête ou perd la connectivité au serveur. Comment le serveur détecte-t-il que le client a échoué et que le handle de contexte doit être exécuté ? Il existe deux sous-scénarios : l’un est que le client est arrêté de manière ordonnée. Dans ce cas, il avertit le serveur qu’il s’arrête et que le serveur peut nettoyer, y compris exécuter des exécutions de contexte. Si le client ne s’arrête pas de manière ordonnée ou qu’il ne peut pas notifier le serveur, le serveur utilise des durées de vie pour déterminer si le client est toujours disponible. Côté serveur, la fonction RpcMgmtSetComTimeout n’a aucun effet. Au lieu de cela, le serveur utilise le paramètre global par machine : conserver le paramètre actif, qui est défini par défaut sur environ deux heures. Si le client ne répond pas aux durées de vie du serveur, la connexion est fermée. Lorsque toutes les connexions à un processus client donné sont fermées, le serveur nettoie et exécute des handles de contexte en attente.