En parlant de thread / socket ? - Delphi/Pascal - Programmation
Marsh Posté le 09-01-2003 à 18:55:50
"les threads des composants socket"
Marsh Posté le 09-01-2003 à 19:19:34
J'ai un petit exemple de client serveur multithread avec des SOCKET (pas des CAsyncSocket mais bon ...)
Marsh Posté le 09-01-2003 à 19:26:56
antp a écrit : "les threads des composants socket" |
vi, quand on utilise les socket (TServerWinSocket, etc ...), il y a possibilite d'y inclure une gestion de thread, et je voudrais savoir a quoi ca correspond.
Marsh Posté le 09-01-2003 à 19:29:09
Kyle_Katarn a écrit : J'ai un petit exemple de client serveur multithread avec des SOCKET (pas des CAsyncSocket mais bon ...) |
c'est sur ton site ? c'est quel fichier (paske yen a plein ) ?
Marsh Posté le 09-01-2003 à 19:54:46
Argh visiblement tu cherche qqch pour Delphi ... moi c'est du C ...
Marsh Posté le 09-01-2003 à 19:56:19
Kyle_Katarn a écrit : moi c'est du C ... |
ouais et une classe genre CAsyncSocket ça me semble même du VC++
Marsh Posté le 09-01-2003 à 19:59:53
Kyle_Katarn a écrit : Argh visiblement tu cherche qqch pour Delphi ... moi c'est du C ... |
arf merci qd meme
Marsh Posté le 09-01-2003 à 20:07:56
rdmarmotte a écrit : |
Les threads et les sockets sont 2 choses bien distinctes.
Bon, c'est vrai, il est souvent pratique d'utiliser des threads dans une appli serveur, mais ce n'est pas une obligation.
Marsh Posté le 09-01-2003 à 20:09:13
mrBebert a écrit : Les threads et les sockets sont 2 choses bien distinctes. |
Peux-tu m'expliquer les threads, paske je sais tjs rien dessus
Marsh Posté le 09-01-2003 à 20:14:59
Normalement, dans un programme, tu as un seul flux d'exécution. Ton programme commence à un endroit, exécute des instructions et finit à un autre. Mais il ne fait qu'une seule chose à la fois (quand il exécute une fonction, il en exécute pas une autre).
Ce flux d'exécution, c'est un thread. Tu peux en créer d'autres, ce qui permet à ton programme de faire 2 (ou plus) choses en même temps.
Comme si tu avais 2 programmes fonctionnant en même temps, mais qui utiliseraient la même zone mémoire, les même variables...
Par exemple, tu peux en avoir un qui est bloqué en attente de données venant du réseau, tout en en ayant un autre qui traite les évènements clavier/souris ou autre...
Mais ca implique un certain nombre de problème d'accès concurrents quand plusieurs threads accèdent simultanément aux même variables.
Marsh Posté le 09-01-2003 à 20:18:36
mrBebert a écrit : Normalement, dans un programme, tu as un seul flux d'exécution. Ton programme commence à un endroit, exécute des instructions et finit à un autre. Mais il ne fait qu'une seule chose à la fois (quand il exécute une fonction, il en exécute pas une autre). |
Oki, je comprends l'interet de l'avoir integre dans les sockets. il ne me reste plus qu'a trouver un exemple qui cumule les deux fonctionnalites (la meilleure facon d'apprendre). mais la, j'ai un peu epuise mes ressources ..... et en plus, aucune aide fournie avec delphi6 perso.
Marsh Posté le 09-01-2003 à 21:38:08
le tut sur les threads sous delphi
pour les sockets va voir les exemples de http://overbyte.delphicenter.com/frame_index.html, http://www.nevrona.com/indy/ ou http://www.ararat.cz/synapse/
sans oublier google...
Marsh Posté le 19-12-2004 à 09:33:49
j'ai le meme problème que lui Ton premier lien ne marche pas. le 3eme lien je connaissais pas ca a l'air pas mal dur a utiliser pr un débutant. Personne n'as reussit a le faire avec les compsants de base de ClientSocket?
Marsh Posté le 29-12-2004 à 20:45:53
rdmarmotte a écrit : il ne me reste plus qu'a trouver un exemple qui cumule les deux fonctionnalites (la meilleure facon d'apprendre). |
Deux exemples réels bâteaux :
1. Un web server
2. Un web browser
Typiquement multi-threaded. Le premier est très facile à écrire soi-même.
Marsh Posté le 09-01-2003 à 18:12:41
Bonjour,
Je cherche desesperemment un bon tutoriel pour utiliser les thread des composants socket (A quoi ca sert, comment ca marche, comment ca se code, les erreurs a eviter, etc ...). Qqun aurait-il une adresse ?
Merci d'avance.
Message édité par rdmarmotte le 09-01-2003 à 18:13:47
---------------
Cobol le jour, PHP la nuit ... Je préfère franchement mes nuits ...