cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014
-
23 mars 2002 à 02:17
cs_thebigbang
Messages postés196Date d'inscriptionvendredi 21 décembre 2001StatutMembreDernière intervention25 juillet 2006
-
16 mai 2002 à 19:18
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Proger
Messages postés248Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention19 décembre 2008 16 mai 2002 à 16:33
Astuce pour faire 65535 connexions simultanées (enfin, 32767 maxi sous 95) :
on crée quelques wsck indexé (par exemple 32767)
on balance un wsck(0) en ecoute.
une requete de connection arrive :
for i = 1 to 32766
if wsck(i).state <> 7 then
wsck(i).close
wsck(i).accept requestid
exit for
end if
next i
et voila!
et pour clore une connexion, on fait juste wsck(i).close !
(bien sûr, ça n'a d'interêt que côté serveur, ou alors si vous êtes assez dingue pour faire un système point-à-point en tcp)
et pour parler du code de cette page, je ne vois pas l'intêret de faire 2 winsocks dans chaque projet pour faire un "duplex" puisque winsock est bidirectionnel. Une fois connecté d'un côté, que le winsock du serveur ou du client fasse senddata ou getdata, chacun retrouvera ses petits. C'est au code de gérer les données émises/reçus.
Bon ok si après réflexion :
C'est juste pour le fun d'utiliser 2 ports simultanéement :p - et comme on code tous pour le fun :
for i = 1100 to 32766
wsck(i).LocalPort=i
wsck(i).Listen
next i
Ka-boum windows :)
Bonne note pour le principe simple et efficace de la synchro auto des connexions.
cs_Logan
Messages postés99Date d'inscriptionmercredi 2 janvier 2002StatutMembreDernière intervention 9 juin 2008 1 avril 2002 à 13:06
Si, ça en vaut une
10
cs_thebigbang
Messages postés196Date d'inscriptionvendredi 21 décembre 2001StatutMembreDernière intervention25 juillet 2006 26 mars 2002 à 13:03
merci beaucoup ...
ca valait pas une bonne note ça ???? lol
A++
bigbang
bigbang44@free.fr
cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014 23 mars 2002 à 02:17
16 mai 2002 à 19:18
A++
bigbang
http://bigbang44.free.fr
16 mai 2002 à 16:33
on crée quelques wsck indexé (par exemple 32767)
on balance un wsck(0) en ecoute.
une requete de connection arrive :
for i = 1 to 32766
if wsck(i).state <> 7 then
wsck(i).close
wsck(i).accept requestid
exit for
end if
next i
et voila!
et pour clore une connexion, on fait juste wsck(i).close !
(bien sûr, ça n'a d'interêt que côté serveur, ou alors si vous êtes assez dingue pour faire un système point-à-point en tcp)
et pour parler du code de cette page, je ne vois pas l'intêret de faire 2 winsocks dans chaque projet pour faire un "duplex" puisque winsock est bidirectionnel. Une fois connecté d'un côté, que le winsock du serveur ou du client fasse senddata ou getdata, chacun retrouvera ses petits. C'est au code de gérer les données émises/reçus.
Bon ok si après réflexion :
C'est juste pour le fun d'utiliser 2 ports simultanéement :p - et comme on code tous pour le fun :
for i = 1100 to 32766
wsck(i).LocalPort=i
wsck(i).Listen
next i
Ka-boum windows :)
Bonne note pour le principe simple et efficace de la synchro auto des connexions.
1 avril 2002 à 13:06
10
26 mars 2002 à 13:03
ca valait pas une bonne note ça ???? lol
A++
bigbang
bigbang44@free.fr
23 mars 2002 à 02:17