Ú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?:))
- Raspberry Pi
- Bittorrent topik
- Windows 7
- Steam, GOG, Epic Store, Humble Store, Xbox PC Game Pass, Origin Access, uPlay+, Apple Arcade felhasználók barátságos izgulós topikja
- Amit látnod kell 80’ – 90’ évek, egész estét betöltő mozi filmjei.
- 5.1, 7.1 és gamer fejhallgatók
- Mérföldkő a szilárdtest akkuknál: fontos lépést tett a QuantumScape
- AMD Navi Radeon™ RX 9xxx sorozat
- Otthoni hálózat és internet megosztás
- OLED monitor topic
- További aktív témák...
- Gamer PC - R5 5600X, RTX 3060ti és 16gb RAM + GARANCIA
- HIGH-END GAMER PC Ryzen 7 9800X3D / RTX 5080 16GB / 32GB DDR5 / 2TB NVMe - Beszámítás
- Lenovo Tab M11 / TB330FU
- SZUPER Akcióban Új Bontatlan Dyson V15 Origin 3 év gyártói garanciával Azonnal Átvehető
- Bontatlan Intel Core ULTRA 9 285K (24mag!) + hűtött VRM-es Z890 alaplap! GAR/SZÁMLA (a Te nevedre)!
- Corsair VENGEANCE Pro 32GB (4x8GB) DDR4 2800MHz
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- Apple Magic Mouse (USB-C) - Fehér
- Lenovo Thinkcentre M920t Tower/ M920s SFF / ThinkStation P330 SFF/számla, garancia
- LG 40U990A-W / 40" Ívelt Nano IPS Black / 5K UHD 120Hz / 2x ThunderBolt 5.0 / Adobe RGB 99%
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest

