서버에서 멀티커넥션을 이루고있을때,
해당 클라이언트중
어느 하나가 Disconnect될때..
그 인덱스이하의 클라이언트들이 작업을 계속하고 있으면..
에러가 발생되는거 같은데요..
즉..
connections[0]과 connections[1]이 같이 작업중인데..
connections[0]의 작업이 끝나서
연결을 끊어버리면..
connections[1]의 작업도중 list out of bounds()...에러가 발생하는 것 같습니다.
어떻게 해결해야 하나요?
과 같이 지정해서 사용하시면 안됩니다.
connections[0]의 연결이 끊기면 인덱스가 땡겨지기 때문이죠...
그것보다는 각 클라이언트의 ip라던가 소켓핸들을 가지고 Connections를 찾으셔서 작업하셔야 합니다.
혹은 접속되어 있는 모든 클라이언트에게 동일한 작업을 하신다면 접속되어 있는 클라이언트 갯수만큼 Loop 돌면서 보내주시면 되구요..
for Loop := 0 to aaServerSocket.Socket.ActiveConnections - 1 do
begin
aaServerSocket.Socket.Connections[i].SendText('aaaaa');
end;
음 뭐 이런 식으로요~~
델~초^^ wrote:
> 서버에서 멀티커넥션을 이루고있을때,
> 해당 클라이언트중
> 어느 하나가 Disconnect될때..
> 그 인덱스이하의 클라이언트들이 작업을 계속하고 있으면..
> 에러가 발생되는거 같은데요..
> 즉..
> connections[0]과 connections[1]이 같이 작업중인데..
> connections[0]의 작업이 끝나서
> 연결을 끊어버리면..
> connections[1]의 작업도중 list out of bounds()...에러가 발생하는 것 같습니다.
> 어떻게 해결해야 하나요?
>
>