42Seoul-IRC / ft_irc

0 stars 0 forks source link

handler에서 참조 관계를 재고민 해야 할 듯 합니다. #3

Closed tg201005 closed 1 year ago

tg201005 commented 1 year ago

현재 server 아래 session, packet, channel 이 모두 속해있습니다.

Screen Shot 2023-07-17 at 10 38 45 PM

handler 단계에서 비정상 종료가 발생한다고 가정할 때,

session 제거 -> client 제거 -> channel에 속해있는 client 제거 형태로 이루어져야 하는데,

각 세 개의 클래스들이 모두 독립적이기 때문에 handler에서 병렬적으로 처리해주어야 합니다.

근데 client에 접근하기 위해서는 packet -> client handler 형태로 접근해야 합니다.

'packet manager.clearBySocket()'을 선언해서, client와 channel을 관리할 수는 있을 듯 합니다만, 참조 관계를 다시 고민 해보긴 해야 할 거 같습니다.

            `