나는 서버를 만드는 과정에 있지만 벽을 치고 그 위에 올라있는 것처럼 보일 수 없다 ...클라이언트가 끊어 질 때 내 서버가 무한정 n 인쇄를하는 이유는 무엇입니까?
사용자가 서버에서 연결을 끊을 때까지 현재 코드가 잘 작동한다. 끝없는 양의 \ n이 인쇄되고 이유를 파악할 수 없습니다.
나는이 문제가 recv 함수에 있다는 것을 알고있다. 나는 그것이 내 쓰레딩과 관련이 있다고 믿지만 그게 무엇인지 알아낼 수 없다.
코드는 다음과 같습니다. 누군가 나를 도울 수 있다면 매우 감사 할 것입니다.
def recv(self, obj, addr, s):
while True:
try:print obj.recv(1024)
except:pass
def connect(self, port):
s = socket.socket()
s.bind(('', port))
s.listen(1)
self.clearscreen()
print "Waiting for connections..."
while True:
obj, addr = s.accept()
verify = obj.recv(1024)
if verify == "ea25364e2dab91b40ae4f73163854b5d":
print "\n"+str(addr) + " has connected.\n "
self.conns[addr] = obj
try:
Thread(target=self.handle, args=(obj, addr, s)).start()
Thread(target=self.recv, args=(obj, addr, s)).start()
except:pass
else:pass
EOS는 무엇을 의미합니까? – Max00355
@ Max00355 스트림의 끝. – EJP
그래, 문제는 이미 오류를 검사하고있다. 이 문제를 해결하는 방법을 모르겠습니다. – Max00355