|
| Iniciado por info, 26,sep. 2005 16:41 - 3 respuestas |
| |
| | | |
|
| |
| Publicado el 26,septiembre 2005 - 16:41 |
Bonjour
j'ai un problème avec l'exemple d'utilisation des socket fourni avec windev : C:\WinDev 9\Exemples\Exemples didactiques\WD Utilisation des sockets
En effet au bout d'environ 1700 connexion/deconnexion d'un client l'application serveur plante avec le message suivant :
=============================================================== Erreur à la ligne 21 du traitement Procédure locale EcouteConnexions. Vous avez appelé la fonction ThreadExécute. Erreur système lors de la manipulation des threads.
Détail de l'erreur système :
Espace insuffisant pour traiter cette commande. (
**********************************************
Informations techniques
Projet : WD Utilisation des sockets
Dump de l'erreur du module <WD90VM.DLL> <9.01At>.
- Appel WL : Traitement de <Fenêtre_Serveur.PROCEDURE.EcouteConnexions>, ligne <21>, thread <0> Fonction <ThreadExécute>, n° de syntaxe <0>
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 2901
- Code erreur WD55 : 0
- Code d'erreur système : 8
- Message d'erreur système : Espace insuffisant pour traiter cette commande.
- Que s'est-il passé ? Erreur système lors de la manipulation des threads.
- Infos de debug : Fonction (0,49)
- Infos attachées : EIT_DATEHEURE : 26/09/2005 15:52:17 EIT_PILEWL : Procédure locale EcouteConnexions (Fenêtre_Serveur.PROCEDURE.EcouteConnexions), ligne 21
- Identifiant dans le .err : 2901 ===============================================================
Comment eviter ce plantage
d'avance merci |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 48 mensajes |
|
| Publicado el 09,enero 2019 - 13:46 |
Du nouveau Frédéric ? 
(J'ai le même problème) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 1.640 mensajes |
|
| Publicado el 09,enero 2019 - 14:22 |
Bonjour !
Ça ressemble a une fuite de mémoire non ? |
| |
| |
| | | |
|
| | |
| |
| Publicado el 09,enero 2019 - 14:36 |
Personnellement, j'ai développé mes applis serveur socket sous forme de services qui se "sabordent" régulièrement (par exemple toutes les heures) lorsqu'il n'y a pas de connexions clients actives.
Ça permet d'éviter les problèmes liées aux pertes de mémoire qui peuvent devenir fatals si on ne réinitialise jamais rien.
Dans mon service, je programme un platus volontaire après un certain temps, si les conditions le permettent, par appel à la fonction FinService dans la prcedure d'exécution du service.
Le service est alors configuré pour se relancer automatiquement |
| |
| |
| | | |
|
| | | | |
| | |
|