1
Мне нужно несколько раз вызвать сервер сокера и распечатать его вывод.Несколько вызовов сокета Python с использованием Eventlet
Вот мой код ниже: -
server.py
import socket
s = socket.socket()
host = socket.gethostname()
port = 1234
s.bind((host, port))
s.listen(5)
print "Server started"
while True:
c, addr = s.accept()
print('Got connection from', addr)
#sprint('Received message == ',c.recv(50))
s = c.recv(50)[::-1]
c.send(s)
c.close()
client.py
import socket
from time import sleep
import eventlet
def socket_client():
s = socket.socket()
host = socket.gethostname()
port = 1234
s.connect((host, port))
print "Sending data"
s.sendall("Hello!! How are you")
print(s.recv(1024))
#socket_client()
pile = eventlet.GreenPile()
for x in range(10):
print 'new process started'
pile.spawn(socket_client())
print 'new process started over'
print 'over'
Я использую питона eventlet назвать socket_client() 10 раз, но его не возвращать правильный результат.
Спасибо .. это сработало, но все же я не получаю ожидаемого результата. После первого звонка он застревает .. нет ответа – user1050619
Не знаю, после изменения 's = c.recv (50) [ :: - 1] c.send (s) 'to' msg = c.recv (50) [:: - 1] c.send (msg) 'он отлично работает для меня. Prints "начался новый процесс Отправка данных uoy era woH !! olleH новый процесс начался« несколько раз ». –