Dans une configuration Windows simple, nous avons un singleton COM qui s'exécute comme un serveur hors processus.Qu'est-ce qui détermine combien de temps prend un serveur COM hors processus pour constater qu'un client est mort?
Les clients se connectent en appelant cocreate et chacun reçoit une interface sur la même instance du serveur.
Si les clients s'arrêtent normalement, ils libèrent leurs références.
Le serveur dispose d'un peu de logique qui le maintient actif peu de temps après la dernière version pour permettre de nouvelles connexions.
Je suis intéressé par un cas particulier - le serveur fonctionne avec un seul client qui plante (il s'agit d'un crash inconnu inconnu) et le client quitte sans avoir publié ses références.
Je constate qu'après une période indéterminée, disons 8 minutes, le serveur reçoit des appels de libération sur les bouts de tous les objets que le serveur a renvoyés des interfaces au client. Cela semble être un nettoyage automatique que je suppose être démarré par la couche LRPC.
Est-ce documenté quelque part et le délai d'attente est-il configurable?
Note: Modèle d'appartement multithread utilisé partout.
Ce lien s'est avéré très utile - merci beaucoup apprécié. – morechilli