LISTE TAMPON FIFO UTILE POUR WINSOCK PAR EXEMPLE

kyrosgear Messages postés 4 Date d'inscription mercredi 19 juin 2002 Statut Membre Dernière intervention 23 avril 2004 - 29 mars 2004 à 15:10
thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 - 29 mars 2004 à 15:37
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/21415-liste-tampon-fifo-utile-pour-winsock-par-exemple

thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 6
29 mars 2004 à 15:37
Je rajoute :

j'ai mis ce code car lorsque je cherchais une solution similaire et lors de mes recherches sur VBFrance, j'avais vu des exemples fait par d'autres developpeur mais avec des composants ADO ???? un peu lourd quand même ??
là c'est juste une liste....
thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 6
29 mars 2004 à 15:34
Je sais que cette solution n'est pas la seule, il y a sans doute plein de façon d'y arriver, d'ailleurs si quelqu'un a mieux qu'il pose un exemple de code.

pour kyrosgear :
Le but de cette Liste FIFO n'est pas de cumuler des milliers de données (je pense que la le principe serait à revoir ), comme tu le dis faire des décalements de données prendraient des ressources.

par contre dans un cas précis c'est intéressant, c'est si, PAR MOMENT, des demandes clients arrivent en même temps (ou presque) et que le serveur n'a pas fini son traitement précédent, dans ce cas on cumule les quelques demandent en attente, pour les traiter au fur et a mesure. (dans mon cas a moi les clients attendent la reponse du serveur ou time out avant de relancer une autre demande donc mon Pb a moi c'etait l'arrivée de demandes de clients quasi en meme temps ).

Fixer le buffer m'embête, alors que la la taille de la liste croit au fur et a mesure qu'elle se rempli, moi je ne m'occupe que de traiter la derniere donnée de ma liste l'avantage de cette technique c'est que on peut continuer a remplir la liste alors qu'en meme temps on la traite (on ne connait pas la position que l'on traite on sait juste que c'est la derniere).

en tout cas si tu pense que ta solution peut être valable pose un bout de code que je test.

n'hésitez pas à critiquer et surtout ( si vous critiquez ) proposé des choses concraites et avec un exemple pour faire avancer le Chimlblic.
kyrosgear Messages postés 4 Date d'inscription mercredi 19 juin 2002 Statut Membre Dernière intervention 23 avril 2004
29 mars 2004 à 15:10
je me demande s'il ne serait pas plus interessant d'ajouter un indice de lecture, un tableau d'entiers indiquant l'ordre d'accès, un indicateur de "buffer restant" et un tableau de bits (je pense à un tableau de bytes en utilisant un xor et un modulo) pour trouver les "cases vides". et on modifie uniquement la taille si nécessaire (peutetre meme par "paquet" pour encore réduire le nombre de modifications?)
Je pense que ce serait moins lourd en traitement que de déplacer à chaque ajout toutes les données du buffer. :o)

mais de toute façon on risque encore d'arriver à tableau utilisant énormément de mémoire meme lorsque cela n'est pas nécessaire
et pour ça il faudrait mettre en oeuvre un système de tassement, qui peut prendre pas mal de temps d'execution, d'où je ne sais pas s'il est vraiment interessant...

il est peutetre aussi interessant de fixer un buffer initial en rapport avec l'utilisation, pour minimiser dès le début les changements de taille des 3 tableaux.

:o) ce sont juste des suggestions, je ne suis qu'étudiant :op
Rejoignez-nous