Innehållsförteckning:
- Nyckelskillnad - Runnable vs Thread
- Vad är Runnable?
- Vad är tråd?
- Vad är likheterna mellan körbar och tråd?
- Vad är skillnaden mellan körbar och tråd?
- Sammanfattning - Runnable vs Thread
2024 Författare: Mildred Bawerman | [email protected]. Senast ändrad: 2023-12-16 08:42
Nyckelskillnad - Runnable vs Thread
Ett program i utförande kallas en process. Processen kan delas in i flera delprocesser. Till exempel är Microsoft Word en process. Samtidigt kontrollerar den stavfelet och grammatiken. Det är en delprocess. Dessa underprocesser kallas trådar. Multitrådning är processen att köra flera trådar samtidigt. Trådade applikationer kan byggas med olika programmeringsspråk. Runnable och Thread är associerade med Java-programmering. Det finns två metoder i Java för att skapa en tråd genom att implementera ett körbart gränssnitt eller utvidga trådklassen. När du implementerar Runnable kan många trådar dela samma trådobjekt medan de är i klassen Extending Thread, varje tråd har ett unikt objekt associerat med sig. Det är den viktigaste skillnaden mellan Runnable och Thread.
INNEHÅLL
1. Översikt och nyckeldifferens
2. Vad kan köras
3. Vad är tråd
4. Likheter mellan körbar och tråd
5. Jämförelse sida vid sida - Körbar än tråd i tabellform
6. Sammanfattning
Vad är Runnable?
En tråd går igenom vissa stater. Det”nya” är början på trådens livscykel. Efter att start () -metoden anropar en ny tråd blir den körbar. Om trådschemaläggaren väljer tråden övergår den till körningstillståndet. Tråden väntar på tillståndet om den tråden väntar på att en annan tråd ska utföra en uppgift. När tråden har slutfört arbetet går den till avslutningstillståndet.
En tråd kan implementeras med Runnable-gränssnittet. Se nedanstående program.
Figur 01: Java-program för att skapa en tråd med Runnable-gränssnitt
Enligt programmet ovan implementerar klassen Runnable Demo Runnable-gränssnittet. Metoden run () finns i klassen som implementerar Runnable-gränssnittet. Det är ingångspunkten för tråden. Logiken är i run () -metoden. I huvudprogrammet skapas en tråd genom att definiera ett objekt som instantierades från Runnable Demo-klassen. Det är t1. Start () -metoden kallas med t1.
Se nedanstående program.
Figur 02: Java-program för att skapa en tråd för att utföra en loop genom att implementera Runnable-gränssnittet
Enligt exemplet ovan implementerar klassen Runnable Demo Runnable interface. Logiken som ska köras med tråden skrivs i run () -metoden. I huvudprogrammet skapas en tråd genom att definiera ett objekt som instantierades från Runnable Demo-klassen. Det är t1. Sedan kallas start () metoden med t1.
Vad är tråd?
Den andra metoden för att skapa en tråd är att utvidga trådklassen. Den består av tre steg. Det första är att förklara klassen som en utvidgning av trådklassen. Därefter ska metoden run () skrivas. Den har den sekvens av steg som tråden ska utföra. Slutligen skapas trådobjektet och metoden start () kallas för att initiera körningen av tråden. Se nedanstående program.
Figur 03: Java-program som utökar trådklassen
Enligt ovanstående program utökar MyThread-klassen trådklassen. Det åsidosätter körmetoden. Metoden run () innehåller logiken som ska köras av tråden. Det är ingången till tråden. Sedan skapas trådobjektet. Det är tråd1. Tråden startas med metoden start (). Det kommer att utföra en call to run () -metod.
Ett exempel på ett program med två klasser som utökar trådklassen är följande.
Figur 04: Java-program med två klasser som utökar trådklassen
Enligt ovanstående program utökar både klass A och B trådklassen. Båda klasserna har implementerat run () -metoden. Huvudtråden är vilken som kör huvudmetoden (). Innan huvudtråden dör skapas och startar tråd1 och tråd2. När huvudtråden nådde slutet på huvudmetoden går tre trådar parallellt. Det finns ingen specifik ordning i vilken trådarna ger utdata. När tråden har startats är det svårt att bestämma vilken ordning de ska utföra. De kör självständigt.
Vad är likheterna mellan körbar och tråd?
Båda använder för att skapa en tråd i Java
Vad är skillnaden mellan körbar och tråd?
Skilja artikeln mitt före bordet
Runnable vs Thread |
|
Runnable är ett gränssnitt i Java för att skapa en tråd som gör att många trådar kan dela samma trådobjekt. | Tråden är en klass i Java för att skapa en tråd där varje tråd har ett unikt objekt associerat med sig. |
Minne | |
I Runnable delar flera trådar samma objekt, så det kräver mindre minne. | I trådklassen skapar varje tråd ett unikt objekt och kräver därför mer minne. |
Utöka förmågan | |
Efter att ha implementerat Runnable-gränssnitt kan det utöka en klass. | Flera arv stöds inte i Java. Efter utvidgning av trådklassen kan den inte förlänga någon annan klass. |
Kodhållbarhet | |
Körbart gränssnitt gör koden mer underhållbar. | I trådklassen är det tidskrävande att underhålla. |
Sammanfattning - Runnable vs Thread
En process är uppdelad i flera delprocesser för att utföra flera uppgifter samtidigt. Dessa underprocesser kallas trådar. Att installera en tråd kan göras genom att implementera Runnable-gränssnittet eller genom att utvidga trådklassen. Det är lätt att utöka trådklassen, men det är inte en bättre objektorienterad programmeringsmetod. När du implementerar Runnable kan många trådar dela samma trådobjekt medan i utvidgning av trådklassen har varje tråd ett unikt objekt associerat med sig. Det är skillnaden mellan Runnable och Thread. I trådklassen kan flera objekt skapa mer minne.
Ladda ner PDF-filen för Runnable vs Thread
Du kan ladda ner PDF-versionen av den här artikeln och använda den för offlineändamål enligt citat. Ladda ner PDF-versionen här Skillnaden mellan körbar och tråd
Rekommenderas:
Skillnaden Mellan Lövfällande Och Vintergröna Träd
Huvudskillnaden mellan lövträd och vintergröna träd är att lövträd kasta sina löv säsongsmässigt medan vintergröna träd håller sina löv genom
Skillnaden Mellan Träd Och Växt
Huvudskillnaden mellan träd och växt är att trädet är en vedartad flerårig växt som har en rak ogrenad stam medan växten är en membe
Skillnaden Mellan Komplett Binärt Träd Och Fullständigt Binärt Träd
Komplett binärt träd vs Fullt binärt träd Binärt träd är ett träd där varje nod har ett eller två barn. I ett binärt träd kan en nod inte ha mer än två
Skillnaden Mellan Kabel Och Tråd
Kabel mot tråd Kabel och tråd är ledare som används inom el- och kommunikationsområden. Om du frågar någon skillnaden mellan kabel och kabel, chanser
Skillnaden Mellan Graf Och Träd
Graf vs träd Graf och träd används i datastrukturer. Det finns verkligen vissa skillnader mellan diagram och träd. En uppsättning vertices som har en binär re