Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Meggyi001: Kórházi ellátás: kuka vagy finom?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- Meggyi001: Hasznos helyek és tippek Párizsban, amiket jó eséllyel keresni is fogsz...
- bitpork: 2025, zárás
- sziku69: Fűzzük össze a szavakat :)
- sh4d0w: Kalózkodás. Kalózkodás?
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
Új hozzászólás Aktív témák
-
loszerafin
senior tag
Próbálkozom a thread-ekkel és elakadtam.
a run() metódusom szinkronizált, egy ciklusban a cnt mezőhöz hozzáad egyet, majd ki is von.
A main()-ben 500 msec-enként kiírom a cnt értékét. A kimenet hol 0, hol egy. Nyilván, a main() metódust futtató szál println-ja ''beüt'' a cnt-hez hozzáadó és abból kivonó utasítás közé. Hogy lehet ezt elkerülni?
class Counter1 {
static int cnt = 0;
static boolean end = false;
static class ModCounter implements Runnable {
public synchronized void run() {
while(!end){
cnt += 1;
cnt -= 1;
}
}
}
public static void main(String[] args)
throws InterruptedException{
ModCounter modc = new ModCounter();
Thread t1 = new Thread(modc);
t1.start();
for(int i=0; i<10; i++){
System.out.println(cnt);
Thread.sleep(500);
};
end = true;
t1.join();
System.out.println(cnt);
}
}
Kimenet:
0
1
1
0
0
1
1
1
0
1
0
Szeretném, ha csupa 0 jelenne meg.
Próbáltam a kiírást szinkronizálni:
synchronized (Counter1.class) {
System.out.println(cnt);
};
De semmi változás.
Előre is köszönöm
KL
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Mibe tegyem a megtakarításaimat?
- Milyen billentyűzetet vegyek?
- Külföldi rendelések: boltok, fizetés, postázás
- 6000 napnál régebben regisztráltak
- Luck Dragon: Asszociációs játék. :)
- Melyik tápegységet vegyem?
- Samsung Galaxy Felhasználók OFF topicja
- Házimozi haladó szinten
- Háztartási gépek
- Milyen notebookot vegyek?
- További aktív témák...
- Light Phone 3 (gomb hibával)
- Lenovo LOQ 17IRX10 17.3" FHD IPS i7-14700HX RTX 5070 32GB 1TB NVMe gar
- PowerColor RADEON RX 6800 XT Red Devil 16G dual bios
- Lenovo LOQ 15IRX10 15.6" FHD IPS i7-13650HX RTX 5070 32GB 1TB NVMe gar
- T14s Gen4 14" FHD+ IPS Ryzen 7 PRO 7840U 32GB 512GB NVMe magyar vbill ujjlolv IR kam gar
- Telefon felvásárlás!! iPhone 15/iPhone 15 Plus/iPhone 15 Pro/iPhone 15 Pro Max
- HIBÁTLAN iPhone 15 Pro Max 256GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3497, 100% Akksi
- Samsung Galaxy S21 Ultra 5G 12/128GB Fekete / 12 hó jótállás
- iKing.Hu - Google Pixel 10 Tensor G5, 120 Hz OLED, tripla kamera-128 GB Használt, karcmentes Gari
- AMD Ryzen 5 5600X BOX új, bontatlan garanciával eladó!
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest

