# chatserver3.py
import socket, threading
class server3(threading.Thread) :
def __init__(self, (socket, address) ):
threading.Thread.__init__(self)
self.SOCKET=socket
self.ADDRESS=address
def run(self) :
print 'Connected ', self.ADDRESS
while True :
From=self.SOCKET.recv(1024) # Read from client
if not From : break
self.SOCKET.send(From)
self.SOCKET.close()
print 'Disconnected ', self.ADDRESS
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 888))
s.listen(4)
while True : # Wait for connection/run server
server3( s.accept() ).start(); |
# chatserver4.py
import socket, threading
class server4(threading.Thread) :
def __init__(self, (socket, address) ):
threading.Thread.__init__(self)
self.SOCKET=socket
self.ADDRESS=address
def run(self) :
vector.append(self)
print 'Connected ', self.ADDRESS
while True :
From=self.SOCKET.recv(1024) # Read from client
if not From : break
for s in vector :
if s != self :
s.SOCKET.send(From)
self.SOCKET.close()
print 'Disconnected ', self.ADDRESS
vector.remove(self)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 888))
s.listen(4)
vector = []
while True : # Wait for connection/run server
server4( s.accept() ).start(); |