Java serwer sieciowy odbieranie danych

0

Witam,
Jestem w trakcie pisania serwera współbieżnego w Javie.

  1. Na serwerze ma operować wiele wątków.
  2. Każdy wątek posiada pewną nieskończoną pętlę, w której komunikuje się z klientem. Jest pewien warunek stopu, wtedy pętla kończy się. Robię porządek zamykając strumienie, z których korzysta wątek, gniazda itp.

Moje pytanie jest następujące:
Czy wykonywanie join jest konieczne jeśli pętla run() została zakończona? Czy funkcja ta ma służyć jak chcę ubić wątek z zewnątrz, czy nie potrzebuje czegoś jak pthread_destroy()?
Jak posprzątać po wątku, gdy funkcja run() zostaje zakończona?

Nie podoba mi się następująca rzecz: mimo, że wątki się kończą to kolejne tworzone mają kolejne identyfikatory. Mimo, że Thread-1 już dawno zakończył pracę to następny ma identyfikator Thread-2 itp.

Czy jest to całkowicie normalne czy świadczy raczej o błędzie w moim kodzie.

Pozdrawiam,

0
  1. Nie musisz robić join jeśli nie interesuje cię informacja o tym że wątek się zakończył
  2. Wszystko samo się posprząta
  3. To jak sobie JVM nazywa wątki to jest jego prywatna sprawa :P
0

Dziękuje.

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