Hallo erstmal,
als absoluter Java-Anfänger habe ich mich mit dem Thema Threadsicherheit beschäftigt. Dabei habe ich eine Methode als synchronized deklariert in der Hoffnung, dass erst ein Thread diese Methode vollständig bearbeitet bevor es der zweite macht. Diesen Gefallen wollte mir das Programm nicht tun. Was mach ich nur falsch? ???:L
als absoluter Java-Anfänger habe ich mich mit dem Thema Threadsicherheit beschäftigt. Dabei habe ich eine Methode als synchronized deklariert in der Hoffnung, dass erst ein Thread diese Methode vollständig bearbeitet bevor es der zweite macht. Diesen Gefallen wollte mir das Programm nicht tun. Was mach ich nur falsch? ???:L
Java:
public class ThreadTest extends Thread
{
int zaehler;
public static void main(String[] args)
{
Thread thread1 = new ThreadTest(1);
Thread thread2 = new ThreadTest(2);
thread1.start();
thread2.start();
}
public ThreadTest(int zaehler)
{
this.zaehler = zaehler;
}
public void run()
{
machWas();
}
public synchronized void machWas()
{
for(int i = 0; i < 1000; i++)
{
System.out.print(zaehler);
}
}
}
Zuletzt bearbeitet: