Atšķirība Starp Runnable Un Thread

Satura rādītājs:

Atšķirība Starp Runnable Un Thread
Atšķirība Starp Runnable Un Thread

Video: Atšķirība Starp Runnable Un Thread

Video: Atšķirība Starp Runnable Un Thread
Video: Ставим Кованый Слик R 15 на Гранту Спорт. Замеры ! 2024, Decembris
Anonim

Galvenā atšķirība - Runnable vs Thread

Izpildāmā programma ir pazīstama kā process. Procesu var sadalīt vairākos apakšprocesos. Piemēram, Microsoft Word ir process. Tajā pašā laikā tas pārbauda pareizrakstības kļūdas un gramatiku. Tas ir apakšprocess. Šie apakšprocesi ir pazīstami kā pavedieni. Vairākas vītnes ir process, kurā vienlaikus tiek izpildīti vairāki pavedieni. Vītņotās lietojumprogrammas var veidot, izmantojot dažādas programmēšanas valodas. Runnable un Thread ir saistīti ar Java programmēšanu. Java ir divas metodes, kā izveidot pavedienu, ieviešot Runnable saskarni vai paplašinot Thread klasi. Īstenojot Runnable, daudziem pavedieniem var būt viens un tas pats pavediena objekts, savukārt klasē Paplašinot pavedienu katram pavedienam ir saistīts unikāls objekts. Tā ir galvenā atšķirība starp Runnable un Thread.

SATURS

1. Pārskats un galvenās atšķirības

2. Kas ir darbināms

3. Kas ir pavediens

4. Līdzības starp darbināmu un pavedienu

5. Blakus salīdzinājums - Skrienams vs pavediens tabulas veidā

6. Kopsavilkums

Kas ir skrienams?

Vītne iet cauri dažiem stāvokļiem. “Jaunais” ir pavediena dzīves cikla sākums. Pēc tam, kad metode start () izsauc jaunu pavedienu, tā kļūst izpildāma. Ja pavedienu plānotājs izvēlas pavedienu, tas pāriet uz darbības stāvokli. Vītne gaida stāvokli, ja šis pavediens gaida citu pavedienu, lai veiktu uzdevumu. Pēc tam, kad pavediens ir pabeidzis darbu, tas nonāk pārtraukšanas stāvoklī.

Vītni var ieviest, izmantojot Runnable saskarni. Skatiet zemāk esošo programmu.

Atšķirība starp Runnable un Thread
Atšķirība starp Runnable un Thread

01. attēls: Java programma, lai izveidotu pavedienu, izmantojot Runnable interfeisu

Saskaņā ar iepriekšminēto programmu Runnable Demo klase ievieš Runnable saskarni. Metode run () atrodas klasē, kas ievieš Runnable saskarni. Tas ir pavediena ievadīšanas punkts. Loģika ir run () metodē. Galvenajā programmā pavediens tiek izveidots, definējot objektu, kas radies no Runnable Demo klases. Tas ir t1. Sākuma () metodi sauc, izmantojot t1.

Skatiet zemāk esošo programmu.

Atšķirība starp Runnable un Thread Figure 02
Atšķirība starp Runnable un Thread Figure 02

02. attēls: Java programma, lai izveidotu pavedienu cikla izpildei, ieviešot Runnable saskarni

Saskaņā ar iepriekš minēto piemēru klases Runnable Demo ievieš Runnable saskarni. Loģika, kas jāizpilda, izmantojot pavedienu, tiek ierakstīta run () metodē. Galvenajā programmā pavediens tiek izveidots, definējot objektu, kas radies no Runnable Demo klases. Tas ir t1. Pēc tam sākuma () metodi sauc, izmantojot t1.

Kas ir pavediens?

Otra pavedienu izveides metode ir klases Thread paplašināšana. Tas sastāv no trim posmiem. Pirmkārt, pasludināt klasi par pavedienu klases pagarināšanu. Pēc tam ir jāuzraksta run () metode. Tam ir soļu secība, kas pavedienam jāizpilda. Visbeidzot, tiek izveidots pavediena objekts un tiek sākta () metode, lai sāktu pavediena izpildi. Skatiet zemāk esošo programmu.

Atšķirība starp Runnable un Thread Figure 03
Atšķirība starp Runnable un Thread Figure 03

03. attēls: Java programma, kas paplašina Thread klasi

Saskaņā ar iepriekš minēto programmu MyThread klase paplašina Thread klasi. Tas ignorē palaišanas metodi. Metode run () satur loģiku, kas jāizpilda pavedienam. Tas ir pavediena ievadīšanas punkts. Pēc tam tiek izveidots pavediena objekts. Tas ir pavediens1. Vītne tiek startēta, izmantojot start () metodi. Tas izpildīs zvana palaist () metodi.

Divu klašu programmas piemērs, kas paplašina pavedienu, ir šāds.

Galvenā atšķirība starp Runnable un Thread
Galvenā atšķirība starp Runnable un Thread

04. attēls: Java programma ar divām klasēm, kas paplašina Thread klasi

Saskaņā ar iepriekš minēto programmu gan A, gan B klase paplašina Vītnes klasi. Abām klasēm ir ieviesta run () metode. Galvenais pavediens ir tas, kas izpilda galveno () metodi. Pirms galvenā pavediena nomiršanas tā izveido un sāk pavedienus1 un pavedienu2. Kad galvenā vītne sasniedza galvenās metodes beigas, paralēli darbojas trīs pavedieni. Nav konkrētas secības, kādā pavedieni dod izvadi. Kad pavediens ir sākts, ir grūti izlemt, kādu secību tie izpildīs. Viņi darbojas neatkarīgi.

Kādas ir Runnable un Thread līdzības?

Abi izmanto, lai izveidotu pavedienu Java

Kāda ir atšķirība starp darbināmu un pavedienu?

Atšķirīgs raksts vidū pirms tabulas

Runnable vs Thread

Runnable ir Java saskarne, lai izveidotu pavedienu, kas ļauj daudziem pavedieniem koplietot to pašu pavedienu objektu. Vītne ir Java klase, lai izveidotu pavedienu, kur katram pavedienam ir saistīts unikāls objekts.
Atmiņa
Programmā Runnable vairākiem pavedieniem ir viens un tas pats objekts, tāpēc nepieciešams mazāk atmiņas. Klasē Thread katrs pavediens izveido unikālu objektu, tāpēc nepieciešams vairāk atmiņas.
Spēju paplašināšana
Pēc Runnable saskarnes ieviešanas tā var paplašināt klasi. Java neatbalsta vairākus mantojumus. Pēc Thread klases pagarināšanas tā nevar pagarināt nevienu citu klasi.
Koda uzturēšana
Runnable interfeiss padara kodu vieglāk uzturamu. Thread klasē uzturēšana ir laikietilpīga.

Kopsavilkums - Runnable vs Thread

Process tiek sadalīts vairākos apakšprocesos, lai vienlaikus veiktu vairākus uzdevumus. Šie apakšprocesi ir pazīstami kā pavedieni. Instant pavedienu var izdarīt, ieviešot Runnable saskarni vai paplašinot Thread Class. Thread klases paplašināšana ir vienkārša, taču tā nav labāka uz objektu orientētas programmēšanas prakse. Īstenojot Runnable, daudziem pavedieniem var būt viens un tas pats pavediena objekts, savukārt paplašinot pavedienu klasi, katram pavedienam ir saistīts unikāls objekts. Tā ir atšķirība starp Runnable un Thread. Thread klasē vairāku objektu izveide var patērēt vairāk atmiņas.

Lejupielādējiet Runnable vs Thread PDF failu

Jūs varat lejupielādēt šī raksta PDF versiju un izmantot to bezsaistes vajadzībām, kā norādīts piezīmē. Lūdzu, lejupielādējiet PDF versiju šeit Starpība starp Skrienamo un Vītni

Ieteicams: