Hirdetés
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Új hozzászólás Aktív témák
-
skoda12
aktív tag
válasz
Dinter #10018 üzenetére
Itt több esetet kell majd szétválogatni szerintem. Induljunk egy runnable állapotból, ekkor a lépések:
1. A foobar.wait() hívása előtt meg kell szerezni a monitor lockját. Ez vagy sikerül elsőre vagy blocked állapotba kerül a thread, ha valaki másnál van lock.
2. Valahogy túljutunk az előző ponton, runnable állapotban van a thread és meghívódik a foobar.wait(). Az új állapot waiting.
3. Valamiért (*) felébred a thread, runnable állapotba kerül. Ahhoz, hogy ki tudjon lépni a wait()-ből kell a monitor lock. Itt megint vagy sikerül elsőre vagy blocked állapot jön és ha megvan a lock akkor runnable megint.(*) A notify() hatására átmehet blocked állapotba a thread. A foobar.notify() híváshoz is kell a monitor lock. Ha a felébresztett thread már futna, de a notify()-t hívó thread még fogja a lockot, akkor a felébresztett thread megy a blocked állapotba. Ha viszont véletlen úgy kapna cpu időt, hogy a notfiy()-t hívó thread (és mindenki más) már eleresztette a lockot, akkor ki is maradhat ez a blocked állapot.
Viszont nem csak a notify() miatt mehet át ilyen állapotokon a thread. Például spurious wakeup miatt a wait()-et hívó thread még a notify() hívás előtt is felébredhet "magától". És akkor itt megint jön az, hogy vagy runnable vagy runnable + blocked + runnable állapotokon megy át.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Xiaomi 14 Ultra 512GB, Kártyafüggetlen, 1 Év Garanciával
- PowerColor RX 6700 XT 12GB GDDR6 RED DEVIL Eladó!
- Bontatlan ANYCUBIC-ARTILLERY PLA Filamentek 1Kg. 1.75mm
- iPhone 12 mini 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3090, 100% Akkumulátor
- Lenovo Legion 5 gamer laptop makulátlan állapotban, 32GB RAM-mal!
- AKCIÓ! FEHÉR ipad pro 13" M4 billentyűzet, VADIÚJ! EU-MAGYAR átvilágítós (lézeresen)
- Xiaomi 11T Pro 256GB Kártyafüggetlen 1 év Garanciával
- Villámgyors teljesítmény és 10 év nyugalom!
- Telefon felvásárlás!! Samsung Galaxy S23/Samsung Galaxy S23+/Samsung Galaxy S23 Ultra
- Olcsó Notebook! Dell Latitude E6540! I7 4600U / 8GB DDR3 / 128GB SSD! / HD8790M
Állásajánlatok
Cég: FOTC
Város: Budapest