J'ai écrit un programme serveur basique basé sur HTTP qui fonctionne en arrière-plan sur mon ordinateur pour me permettre d'automatiser diverses tâches à partir de mon Android (via des requêtes HTTP dans Tasker). Tout cela fonctionne bien (sauf this problem), sauf qu'après plus de 30 minutes d'inactivité, l'application finit par s'endormir, comme si elle était en dehors de la mémoire, et prend une bonne minute pour se réveiller lorsqu'elle reçoit un message Demande HTTP ou lorsque j'essaie de restaurer la fenêtre et d'interagir avec l'interface utilisateur.Comment empêcher mon serveur HTTP de "dormir"?
J'utilise System.Net.HttpListener
pour implémenter le serveur (en utilisant des appels asynchrones à BeginListen
). Comment devrais-je le garder sur ses orteils?
Avez-vous regardé dans le moniteur de ressources de Windows pour voir ce qui se passe quand le serveur reçoit une demande? Peut-être que le CLR est envoyé à partir du disque. – ide