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

Połączenie sieciowe (stan połączenia)
SH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
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

Hrypa
  • Rejestracja: dni
  • Ostatnio: dni
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.

KK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 135
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.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.