Hallo, zwei Threads rufen gleichzeitig die selbe Methode des selben Objekts auf. Diese Methode verändert keine Memberobjekte, aber eben ihre eigenen Variablen, Schleifencounter und so. Macht das Bumm oder bekommt die Methode mit jedem Aufruf nochmal 'nen eigenen Stack/Heap/habKeineAhnungVonSpeicherManagement? Wenn Bumm, was ist die Lösung? -- main($)??<-$<='?'>>2?main($-!!putchar( (("$;99M?GD??(??/x0d??/a:???;a"+'?'/4) ??($??)+'?'/3-2-1+$%2)??''?')):'?';??>
Da ist Java wie jede andere normale Sprache, also du kriegst keine Probleme da es für jeden Thread einen eigenen Stack gibt und eine Funktion bzw. Methode hat ihre lokalen Variablen "eigentlich" immer auf dem Stack. Naja wie auch immer das funktioniert, falls du Membervariablen veränderst Java Monitore nutzen. Btw. wenn die Methode nichts an dem Objekt verändern, dann sollten sie static deklariert sein.Dieser Post wurde am 05.06.2007 um 00:33 Uhr von Blubber2063 editiert.
Danke. Bist jetzt liest sie nur, daher nicht static. -- main($)??<-$<='?'>>2?main($-!!putchar( (("$;99M?GD??(??/x0d??/a:???;a"+'?'/4) ??($??)+'?'/3-2-1+$%2)??''?')):'?';??>
Wenn sie liest, dann musst du aber drauf achten das es nicht passieren kann, das ein anderer Thread zur "gleichen" Zeit eine Methode aufruft die Attribute verändert, sonst musst du doch synchronisieren.