Hirdetés
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Xiaomi 12X – kicsi a bors és hűvös
- OnePlus 15 - van plusz energia
- Apple Watch
- Szívós, szép és kitartó az új OnePlus óra
- One mobilszolgáltatások
- Milyen okostelefont vegyek?
- Huawei P30 Pro - teletalálat
- Xiaomi 15T Pro - a téma nincs lezárva
- Megtalálták az akkumulátortechnológiai Szent Grált? - CES
Ú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?:))
- One otthoni szolgáltatások (TV, internet, telefon)
- SnowRunner
- Kuponkunyeráló
- Milyen videókártyát?
- Forza sorozat (Horizon/Motorsport)
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Villanyszerelés
- Teljes verziós játékok letöltése ingyen
- CES 2026: újraértelmezte a billentyűzet fogalmát a HP
- További aktív témák...
- HIBÁTLAN iPhone 14 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3527
- Autós kamera eladó
- HIBÁTLAN iPhone 14 Pro 512GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen
- GYÖNYÖRŰ iPhone 15 Pro 256GB Natural Titanium -1 ÉV GARANCIA - Kártyafüggetlen, 100% Akkumulátor
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3172
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest


