Ero ajettavan ja langan välillä

Avainero - ajettavissa vs säie
 

Suoritettavana oleva ohjelma tunnetaan prosessina. Prosessi voidaan jakaa useisiin aliprosesseihin. Esimerkiksi Microsoft Word on prosessi. Samalla se tarkistaa oikeinkirjoituksen ja kieliopin. Se on aliprosessi. Nämä aliprosessit tunnetaan säikeinä. Monisäikeinen on prosessi, jolla suoritetaan useita ketjuja samanaikaisesti. Kierteisiä sovelluksia voidaan rakentaa käyttämällä erilaisia ​​ohjelmointikieliä. Runnable ja Thread liittyvät Java-ohjelmointiin. Java-tekniikassa on kaksi tapaa luoda säiettä toteuttamalla suoritettava käyttöliittymä tai laajentamalla säieluokkaa. Suoritettaessa Runnable, monet ketjut voivat jakaa saman ketjuobjektin, kun taas Extending Thread -luokassa jokaiselle ketjulle on liitetty yksilöivä objekti. Tuo on avainero suoritettavan ja langan välillä.

SISÄLLYS

1. Yleiskatsaus ja keskeiset erot
2. Mikä on ajettavissa
3. Mikä on säie
4. Samankaltaisuudet ajettavan ja langan välillä
5. Vertailu rinnakkain - suoritettava vs lanka taulukkomuodossa
6. Yhteenveto

Mikä on ajettavissa?

Lanka kulkee joidenkin valtioiden läpi. ”Uusi” on langan elinkaaren alku. Kun käynnistysmenetelmä () kutsuu uuden säiettä, siitä tulee ajettavissa. Jos säikeiden ajoittaja valitsee säikeen, se siirtyy käynnistystilaan. Lanka odottaa tilaa, jos kyseinen ketju odottaa toista säiettä tehtävän suorittamiseksi. Kun lanka on valmis työ, se menee päätetilaan.

Lanka voidaan toteuttaa Runnable-käyttöliittymällä. Katso alla olevaa ohjelmaa.

Kuva 01: Java-ohjelma säikeen luomiseen Runnable-käyttöliittymällä

Yllä olevan ohjelman mukaan luokka Runnable Demo toteuttaa Runnable-käyttöliittymän. Run () -menetelmä on luokan sisällä, joka toteuttaa Runnable-käyttöliittymän. Se on langan sisääntulopiste. Logiikka on run () -menetelmässä. Pääohjelmassa säie luodaan määrittelemällä objekti, joka välittyi Runnable Demo -luokasta. Se on t1. Käynnistysmenetelmää () kutsutaan t1: llä.

Katso alla olevaa ohjelmaa.

Kuva 02: Java-ohjelma langan luomiseksi silmukan toteuttamiseksi toteuttamalla suoritettava käyttöliittymä

Yllä olevan esimerkin mukaan luokka Runnable Demo toteuttaa Runnable-käyttöliittymän. Kierteen avulla suoritettava logiikka on kirjoitettu run () -menetelmällä. Pääohjelmassa säie luodaan määrittelemällä objekti, joka välittyi Runnable Demo -luokasta. Se on t1. Sitten start () -menetelmää kutsutaan käyttämällä t1.

Mikä on säie?

Toinen tapa luoda ketju on laajentamalla ketjuluokkaa. Se koostuu kolmesta vaiheesta. Ensin on julistettava luokka laajentamaan ketjuluokkaa. Jälkeenpäin run () -menetelmä tulisi kirjoittaa. Siinä on vaihejärjestys, jonka säikeen tulisi suorittaa. Lopuksi säieobjekti luodaan, ja aloitus () -menetelmä kutsutaan käynnistämään säiettä. Katso alla olevaa ohjelmaa.

Kuva 03: Java-ohjelma, joka laajentaa säieluokkaa

Yllä olevan ohjelman mukaan MyThread-luokka laajentaa säieluokkaa. Se ohittaa suoritusmenetelmän. Run () -menetelmä sisältää logiikan, jonka säie suorittaa. Se on aloituskohta ketjuun. Sitten lankaobjekti luodaan. Se on säie1. Lanka aloitetaan start () -menetelmällä. Se suorittaa kutsun suorittaa () -menetelmän.

Esimerkki kahdesta luokasta, jotka jatkavat lankaluokkaa, on seuraava.

Kuva 04: Java-ohjelma, jossa on kaksi luokkaa, jotka jatkavat säieluokkaa

Yllä olevan ohjelman mukaan sekä luokka A että B jatkavat lankaluokkaa. Molemmilla luokilla on suoritettu run () -menetelmä. Päälanka suorittaa main () -menetelmän. Ennen kuin päälanka kuolee, se luo ja käynnistää säie1 ja säie2. Siihen mennessä, kun päälanka saavutti päämenetelmän lopun, kolme säiettä on käynnissä samanaikaisesti. Ei ole erityistä järjestystä, jossa säikeet antavat tulosteen. Kun säie on aloitettu, on vaikea päättää, missä järjestyksessä he suorittavat. He juoksevat itsenäisesti.

Mitkä ovat samankaltaisuudet ajettavan ja langan välillä?

  • Molemmat käyttävät langan luomista Java: seen.

Mikä on ero ajettavan ja langan välillä??

Suoritettava vs ketju

Runnable on Java-käyttöliittymä, jolla luodaan ketju, jonka avulla monet ketjut voivat jakaa saman ketjuobjektin. Lanka on Java-luokka, jolla luodaan ketju, jossa jokaiselle ketjulle on liitetty yksilöivä objekti.
 Muisti
Suoritettavissa, useat ketjut jakavat saman objektin, joten vaatii vähemmän muistia. Kierreluokassa jokainen säie luo yksilöllisen objektin, joten se vaatii enemmän muistia.
Kykyjen laajentaminen
Suoritetun Runnable-käyttöliittymän avulla se voi pidentää luokkaa. Java ei tue useita perintöjä. Kiertoluokan laajentamisen jälkeen se ei voi laajentaa ketään muuta luokkaa.
 Koodin ylläpidettävyys
Suoritettava käyttöliittymä tekee koodista entistä ylläpidettävämmän. Kierreluokassa ylläpito on aikaa vievää.

Yhteenveto - ajettavissa vs säie 

Prosessi on jaettu useisiin osaprosesseihin useiden tehtävien suorittamiseksi samanaikaisesti. Nämä aliprosessit tunnetaan säikeinä. Langan välitön aloittaminen voidaan suorittaa toteuttamalla suoritettava käyttöliittymä tai laajentamalla säieluokkaa. Ketjuluokkaa on helppo pidentää, mutta se ei ole parempi olio-ohjelmointi. Suoritettaessa Runnable, monet ketjut voivat jakaa saman ketjuobjektin, kun taas ketjuluokkaa laajennettaessa jokaiselle ketjulle on liitetty yksilöllinen objekti. Tämä on ero suoritettavan ja säikeen välillä. Kierreluokassa useiden kohteiden luominen voi kuluttaa enemmän muistia.

Lataa PDF suoritettavasta vs. säikeestä

Voit ladata tämän artikkelin PDF-version ja käyttää sitä offline-tarkoituksiin lainaushuomautuksen mukaisesti. Lataa PDF-versio täältä Suoritettavan ja langan ero

Viite:

1.tutorialspoint.com. “Java monisäikeinen.” Kohta, saatavana täältä 
2.Pramodbablad. "Laajentaa säiettä Vs toteuttaa Java-ajettavana." Päivän Java-konsepti, 11. marraskuuta 2016. Saatavilla täältä
3.Tilat luoda ketju Java-monisäikeiseen | Core Java -opetus | Studytonight. Saatavilla täältä