SERVEUR MULTITHREAD API WIN32 AVEC GUI SANS MFC [VC++ 7]

cs_neria Messages postés 319 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 16 février 2009 - 31 mai 2005 à 21:21
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014 - 1 juin 2005 à 22:23
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/31739-serveur-multithread-api-win32-avec-gui-sans-mfc-vc-7

cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
1 juin 2005 à 22:23
Le problème de mémoire est résolu, mise à jours bientôt j'espères :)
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
1 juin 2005 à 21:10
Je vais faire ça oui, quand j'envoie beaucoups de packet le serveur prend plusieurs secondes avant d'avoir terminé le traitement (je viens de voir ça).

Merci de votre aide :)

Quand je dit partout je parle bien des endroits ou c'est des tableaux, c'est uniquement des tableaux qui a dans mon code de mémoire

A+
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
1 juin 2005 à 19:40
Non ca ne doit pas venir de ces fonction. Cela dit, pour des raison d'efficacité de ton code, il faut que tu utilise strstr à la place de InStr
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
1 juin 2005 à 19:32
Faut pas les mettre partout, seulement là où tu détruis des tableaux (donc là où tu as utilisé new[] et pas new)
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
1 juin 2005 à 19:28
J'ai mis des [] partout dans une version que je posterai en tant que mise à jours quand j'aurai réglé le problème, et ça ne fait malheureusement aucune différence, est-ce que ça pourrais venir des fonctions MID ou InStr à votre avis ?
BsEtZeOpLhD Messages postés 61 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 29 juin 2005
1 juin 2005 à 15:01
Bonjours die Elite.
Beau programme,sa tourne pas mal.
Bravo
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
1 juin 2005 à 14:13
C'est sûrement de là que viens ton leak mémoire. Quand tu fais delete tableau, tu ne libères que la mémoire du premier élément du tableau, il te faut absolument faire delete[] partout où tu libères des tableaux, ça devrait régler ton problème.
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
1 juin 2005 à 13:42
il y en a un pour les objets simples et l'autre pour les tableaux d'objets c'est tout
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
1 juin 2005 à 02:34
C'est quoi la différence ?
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
31 mai 2005 à 23:06
pour la destruction d'un tableau créé avec new, on utilise delete[] et non delete
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
31 mai 2005 à 22:48
Merci :), pour l'interface sans MFC c'est en bonne partie inspiré du code de NitRic http://www.cppfrance.com/code.aspx?ID=9289, excellente source d'ailleur. Concernant l'interface c'est sûrement là le gros du problème de visibilité, je vais tenté de mieux structuré dans la prochaine version.

A+
cs_neria Messages postés 319 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 16 février 2009
31 mai 2005 à 21:21
Salut !

Ton code est interessant (surtout la création de l'interface sans MFC, bravo !!!), mais tu aurais pu un peu plus structurer et découper ton code pour plus de lisibilité (et surtout pour plus tard quand il sera plus gros). En faisant éventuellement une (ou des) classes. Sinon je te conseille de te pencher sur les WSAEvents pour les problèmes de mémoire entre autres (perso j'ai fait une classe qui les utilises et l'utilisation du processeur est quasi nulle). Bon courage pour la suite !!!

@+ Neria