0
소켓 프로그래밍에 종사하고 있으며 서버에 참여하는 모든 클라이언트의 트랙을 유지해야합니다.클라이언트가 소켓에서 서버의 연결을 끊는 지 확인하는 방법
client = []
을하고 서버에 연결할 때마다 클라이언트를 추가 :
그래서 난 그냥 그들에게 목록을 유지하고있다. 이제 클라이언트 연결이 끊어 질 때마다 목록에서 클라이언트를 제거해야합니다. 문제는 클라이언트가 서버와의 연결을 끊었을 때 어떻게 알 수 있습니까?
서버를 연결하는 경우, 내가 사용하고
:s = socket.socket()
s.bind((host, port))
client = []
while True:
c, addr = s.accept()
client.append(addr)
s.close()
이 허용 소켓을 사용하면 기록 할 때, 오류가 발생하는 것, 또는 피어는 sockect 폐쇄되는 즉시 읽을 때 0 바이트 읽기. –
_Ux_에서 (일반) 소켓은 파일 설명자이므로 ['fcntl (fd, F_GETFD)]] (http://man7.org/linux/man-pages/man2/fcntl.2.html)을 사용할 수 있습니다. – CristiFati