Egy kis trollkodás

Módosítsuk egy csöppet a kliens programját, és a fixen megadott nyelv helyett kérjük meg a felhasználót, hogy gépelje be (a try blokkon belül), vagyis ilyen lesz a kódrészlet:

String nyelv = JOptionPane.showInputDialog("Adja meg a kívánt nyelvet");

Hogy ez miért trollkodás? Nem azért, mert a felhasználó elgépelheti (ebben az esetben a default változatot kapja válaszként), hanem azért, mert a válasz begépelése előtt elmehet kávézni. Márpedig ekkor egyetlen másik kliens sem kap választ addig, amíg a kávézó vissza nem ül a gépe mellé, és be nem gépeli a választ.

Az előző megoldás jó volt arra, hogy szemléltessük a kliens-szerver kapcsolatot, de a gyakorlatban használhatatlan, hiszen a klienseket nem egymás után, hanem párhuzamosan (vagy kvázi párhuzamosan) kell kiszolgálni. Ehhez szálkezelésre van szükségünk.

Ezt mutatja a következő megoldás (az előző módosítása).

datumos_kliens_szerver_2.pdf