Sziasztok,

Elnézést mindenkitől. Elég kezdő vagyok. Van egy házi feladatom és elakadtam. Egy X0 játékot csinálok, meg is van. De mivel hálózaton kell neki működni vannak gondjaim. Létrehozom a main-ben a ServerSocket-et, és ki rakom egy szálba az accept -el.

kb így:

XO Felulet = new XO();
Felulet.setVisible(true);
ServerSocket ss=null;
try {
    System.out.println("Létre hozom az ss -t");
    ss=new ServerSocket(lPort);
    System.out.println("Létre hozva az ss");
} catch (IOException ex) {
    Logger.getLogger(XO.class.getName()).log(Level.SEVERE, null, ex);
}

try {
    System.out.println("Következő sorban indul a szál");
    new Szal(ss.accept()).start(); // <-- itt
    System.out.println("A szál elindult");
} catch (IOException ex) {
    Logger.getLogger(XO.class.getName()).log(Level.SEVERE, null, ex);
}

A gondom az, hogy a kiemelt sor-tól ki akad. A Szal az egy belső osztály (alosztály) így kezdődik:

static class Szal extends Thread implements Runnable {
}

Az osztály már nem hívódik meg. A konstruktorába a System.out.println() már nem hívódik meg, illetve a JFrame -emen sem látszik semmi. Azt értem, hogy az accept blokkolva tartja egy kliens kapcsolatig a szálat, DE miért nem látszik semmi a Swing-ben ? Olyan mintha a thread nem is indulna. Próbáltam azt is hogy nem adok át semmit a Szal konstruktorába és ott indítom el a ServerSocket accept-et. De minden maradt ugyanúgy. Ha ki kommentelem a kiemelt sort akkor tökéletesen látszik, és működik minden a JFrame -en.

Kérnék egy kis út mutatást.

Köszönöm