begin process at 2012 05 28 07:25:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Divers

 > 

Autre

 > 

threads en chat sur Python


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

threads en chat sur Python

samedi 16 janvier 2010 à 16:00:13 | threads en chat sur Python

mcherkao88

<code>Bonjour,
Je vient de faire un programme de chat entre PC et SERVEUR sous Python.J'ai réalisé l'a-synchronisme via les Threads.
Mon problème est que je ne peut visualisée les donnée envoyées par le client au serveur qu'après faire une émission du serveur au client. Et si j'élimine par exemple le thread d'émission du serveur, alors là l'affichage du message reçu par le serveur est immédiat. Si quelqu'un pourrait me donner un coup de main, je lui serai reconnaissant.
Voilà ci joint mon programme:
Code Python :
#####################CLIENT#####################

host = "00:24:7E:D6:C5:9A"
port = 3

import socket, sys, threading, time
from bluetooth import *

class ThreadReception(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn           
        
    def run(self):
        while 1:
            message_recu = self.connexion.recv(1024)
            print "*" + message_recu + "*"
            if message_recu.upper() == "FIN":
                break
            time.sleep(0.001)
    
class ThreadEmission(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn          
        
    def run(self):
        while 1:
            message_emis = raw_input()
            self.connexion.send(message_emis)
            time.sleep(0.001)
			
# Programme principal - Établissement de la connexion :
connexion = BluetoothSocket( RFCOMM )
try:
    connexion.connect((host, port))
except socket.error:
    print "La connexion a échoué."
    sys.exit()    
print "Connexion établie avec le serveur."
            
# Dialogue avec le serveur : on lance deux threads pour gérer
# indépendamment l'émission et la réception des messages :
th_E = ThreadEmission(connexion)
th_R = ThreadReception(connexion)
th_E.start()
th_R.start()
th_E.join()
th_R.join()
connexion.close()
###############SERVEUR####################

from bluetooth import *
import socket, sys, threading,time

port = 3

class ThreadReception(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn           
        
    def run(self):
        while 1:
            try:
                message_recu = self.connexion.recv(1024)
                print "*" + message_recu + "*"
                if message_recu.upper() == "FIN":
                    break
            except:pass    
            time.sleep(0.001)
		
    
class ThreadEmission(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn          
        
    def run(self):
        while 1:
            message_emis = raw_input()
            try:
                self.connexion.send(message_emis)
                if message_emis.upper() == "FIN":
                    break
            except:pass    
            time.sleep(0.001)
            
# Programme principal - Établissement de la connexion :

server_sock = BluetoothSocket( RFCOMM )
server_sock . bind(( "", 3))
server_sock . listen(2)

connexion , client_info = server_sock . accept( )
print "Accepted connection from " , client_info
            
# Dialogue avec le client : on lance deux threads pour gérer
# indépendamment l'émission et la réception des messages :

th_R = ThreadReception(connexion)
th_E = ThreadEmission(connexion)
th_E.start()
th_R.start()
th_R.join()
th_E.join()

connexion.close()
server_sock.close()
<code></code></code>


Cette discussion est classée dans : message, connexion, self, threading, th


Répondre à ce message

Sujets en rapport avec ce message

les threads sur Python [ par mcherkao88 ] Bonjour, Je vient de faire un programme de chat entre PC et SERVEUR sous Python.J'ai réalisé l'a-synchronisme via les Threads. Mon problème est que je Connexion base... [ par ctof3552 ] slt!est-il possible de tester si la connexion à une base (dans mon cas une base oracle) afin d'afficher un message explicite si la connexion s'est mal WebParts et connexion aux serveur SQL [ par aKheNathOn ] Bonjour,J'ai une webpart qui doit effectuer une connexion à la base de données pour y rechercher des informations. La base de données peut être sur un Forcer affichage Message d'un RegularExpressionValidator [ par garcimor59 ] Bonjour,Une petite question sur les RegularExpressionValidator.Voilà j'ai un RegularExpressionValidator qui vérifie la format date dans un textbox et JMAIL ??? [ par thor_8one ] Bonjour,Voilà, je veux qu'en remplissant un formulaire des gens puissent télécharger un document et que leurs infos nous soit envoyer par mail, pour s tableau a remplir [ par tazagaga ] bonjour a tous voila je suis sur un projet et je suis debutant en C # et tout cequi concerne le .net alor ma page est en aspx.cs j'ai crée une co Problème IIS : plus aucun message d'erreurs [ par kitati ] Bonjour à tous,Depuis quelques jours, mon serveur IIS ne renvoit plus aucun message d'erreur.J'ai bien dans mon web.config :Donc par exemple je fais u Mise en forme des champs récupérés dans le body d'un message! [ par syl62 ] Bonjour,je n'ai pas trouvé de solution à mon problème de mise en forme pour l'envoi d'un formulaire.En fait la récupération des différents champs et l connexion distante avec iis [ par kikodos23 ] Salut tous le mondej'ai hébèrgé mon site avec iis est je veut le tester a distanct (ordinateur distant par internet),j'ai tapé le lien http://mon @ ip Accordeon ajax [ par waterw72 ] Bonjour,J'aurais besoin d'info concernant le message suivant :"Impossible d'initialiser 'Panes'. Détails : Impossible d'ajouter 'Panes' à la collectio


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales