dabcorp
Messages postés15Date d'inscriptionmardi 19 juillet 2005StatutMembreDernière intervention20 octobre 2009
-
19 juil. 2005 à 20:10
cs_asma40
Messages postés1Date d'inscriptionjeudi 22 janvier 2009StatutMembreDernière intervention22 janvier 2009
-
22 janv. 2009 à 23:05
Bonjour ,
J'ai fait un client/serveur socket , mais je me comprend pas les threads ... Je suis obligé de faire une boucle pour relance le programme à chaque réception d'une data client.
voici mon code :
# Serveur Socket
import socket
import time
import threading
import os
def connec():
HOST = '127.0.0.1' # Nom du serveur
PORT = 8010 # Port d'ecoute sur le serveur
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connexionn du client :', addr
while 1:
data = conn.recv(1024)
if not data:
print 'Deconnexion du client'
break
else:
print data
conn.send(data)
conn.close()
lambdacrash
Messages postés31Date d'inscriptionvendredi 28 février 2003StatutMembreDernière intervention11 juillet 201013 21 juil. 2005 à 19:37
Salut,
Je connais bien les sockets en multi-threading. Je veux bien t'aider,
seulement il faudrait que tu présentes ton code correctement car là je
ne comprends rien.
dabcorp
Messages postés15Date d'inscriptionmardi 19 juillet 2005StatutMembreDernière intervention20 octobre 2009 21 juil. 2005 à 23:00
Merci pour ton aide.
PS : En fait , je comprend pas les threads ....
import socket
import time
import threading
import os
def connec():
print 'Serveur Pret, en attente ...'
HOST = '127.0.0.1' # Nom du serveur
PORT = 8010 # Port d'ecoute sur le serveur
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connexionn du client :', addr
while 1:
data = conn.recv(1024)
if not data:
print 'Deconnexion du client'
break
else:
print data
conn.send(data)
lambdacrash
Messages postés31Date d'inscriptionvendredi 28 février 2003StatutMembreDernière intervention11 juillet 201013 22 juil. 2005 à 07:17
Salut,
tu m'excuseras je vais faire vite car je pars au boulot.
Un thread contient du code que tu auras écris (script envoyant l'heure courante en broadcast par exemple).Si tu créés 5 threads contenant le même code, ce code sera exécuter 5 fois simultanément et ceux jusqu'à l'infini dans le temps si l'exécution n'est stoppée.
Lancer 5 threads est équivalent à écrire 5 fichiers .py contenant le même code et tenter de les exécuter simultanément. Les threads peuvent le faire mais pas toi !