Tehtävät ja elinkaaret
Ymmärtäkää tehtävien tilat ja elinkaaret rinnakkaisuudessa luomisesta päättämiseen.
Tehtävät ja elinkaaret on ilmainen Java Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/2. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Java Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Java Academy-kurssilla on yhteensä 2 oppituntia.
Johdanto
Tehtävät edustavat työyksiköitä. Säikeet ja suorittajat suorittavat tehtäviä, ja jokainen tehtävä käy läpi elinkaaren.
Säikeiden tilat
Säikeiden tilat: NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, TERMINATED.
Koodi: elinkaaren tilat
Tässä näytetään säikeiden tilat ennen suoritusta ja sen jälkeen.
public class Main {
public static void main(String[] args) throws Exception {
Thread t = new Thread(() -> System.out.println("Running task"));
System.out.println("State before start: " + t.getState());
t.start();
t.join();
System.out.println("State after finish: " + t.getState());
}
}
Executor-tehtävät
Suorittajat hallitsevat tehtäviä sisäisesti. Tehtävät asetetaan jonoon, säikeet poimivat ne suoritettaviksi, ja lopuksi ne valmistuvat.
Koodi: executorin elinkaari
Tässä tehtävä lähetetään suorittajalle ja suorittaja sammutetaan.
import java.util.concurrent.*;public class Main {
public static void main(String[] args) throws Exception {
ExecutorService exec = Executors.newSingleThreadExecutor();
Future<?> f = exec.submit(() -> System.out.println("Task in executor"));
f.get();
exec.shutdown();
System.out.println("Executor shutdown called.");
}
}
Odotustilat
Säikeet voivat odottaa (WAITING) tai odottaa aikakatkaisun kanssa (TIMED_WAITING). Niistä tulee jälleen RUNNABLE-tilassa olevia, kun ne saavat ilmoituksen.
Elinkaaren tarkistus
Pikatarkistus: Mikä näistä EI ole yleinen säikeen tila?
Kertaus
Kertaus: Säikeet ja tehtävät siirtyvät tilasta toiseen. Suorittajat hallitsevat tehtäviä ja sammuttavat itsensä asianmukaisesti.
Opi Java tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 104
- Oppitunnit
- 374
Usein kysytyt kysymykset
Onko oppitunti ”Tehtävät ja elinkaaret” ilmainen?
Kyllä – oppitunnin ”Tehtävät ja elinkaaret” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Java Academy-kurssin, päivitä CoddyKit PROhon. Java Academy-kurssilla on yhteensä 2 oppituntia.
Mitä opin oppitunnilla ”Tehtävät ja elinkaaret”?
Ymmärtäkää tehtävien tilat ja elinkaaret rinnakkaisuudessa luomisesta päättämiseen. Harjoittelet Java Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Java Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Java Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/2.
Kuinka kauan ”Tehtävät ja elinkaaret”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Java Academy-oppitunnilla?
Kyllä. Jokainen Java Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Executorit ja Futuret
- Tehtävät ja elinkaaret