Połączenie sieciowe (stan połączenia)

0

Witam,

Piszę prostą aplikację klient + serwer. Klient łączy się z serwerem i może wysyłać i odbierać komunikaty z serwera. Podczas podłączania się klienta do serwera, na serwerze pokazuje się komunikat o nawiązaniu połączenia oraz gniazdo klienta jest dodawane do tablicy ArrayList abym mógł później wysyłać komunikaty. Muszę teraz coś wykombinować aby usuwać wpisy z tablicy gdy klient się rozłączy. Jak do tego podejść? Wysyłać co jakiś czas informacje kontrolne??

Kuba

0

Dokładnie tak, co jakiś czas wysyłasz od klienta kontrolny pakiet; na serwerze okresowo usuwasz wszystkich klientów, od których nie było wiadomości od x czasu.

0

Istnieją metody sprawdzające stan połączenia (chyba coś w stylu Socket.isConnected()), ale nie działa to zbyt dobrze, więc najlepszym rozwiązaniem jest małe zapytanie testowe co jakiś czas.

1 użytkowników online, w tym zalogowanych: 0, gości: 1