On 01/11/2011 15:07, MrSmile wrote:
Hi people!
I have asked myself why I am not capable sending 2 messages a time to a
Socketserver. Why is that?!
Here the Server:
import SocketServer
from ast import literal_eval
class MKTest(object):
DSX = []
MKTestInst = None
def __init__(self,Daten):
MKTest.DSX.append(Daten)
def getObj(Daten):
if MKTest.MKTestInst == None:
MKTest.MKTestInst = MKTest(Daten)
return MKTest.MKTestInst
getObj = staticmethod(getObj)
class MySockX(SocketServer.BaseRequestHandler):
def handle(self):
data = self.request.recv(1024)
data = literal_eval(data)
#MKTest.getObj(data[0])
#MKObj = MKTest(data[0])
MKObj = MKTest.getObj(data[0])
data = MKTest.DSX
data = '%s' % data
self.request.send(data)
if __name__ == "__main__":
HOST, PORT = "localhost", 9999
server = SocketServer.TCPServer((HOST,PORT),MySockX)
server.serve_forever()
[snip]
I think that in the 'handle' function you should be putting the code in
a 'while' loop:
def handle(self):
# The client has opened a socket to the server.
while True:
data = self.request.recv(1024)
if not data:
# The client has closed the socket to the server.
break
...
--
http://mail.python.org/mailman/listinfo/python-list