Skillnad mellan sömn och vänta Skillnad mellan

Anonim

Sova vs vänta

Maskiner som eftersom datorer använder artificiellt språk för att skapa program, styra dem och låta dem kommunicera instruktioner och uttrycka algoritmer. Detta språk kallas programmeringsspråk.

Före tillkomsten av datorer hade programmeringsspråk redan använts i vävstolar och pianon. Eftersom datoranvändning blev vanligare var det nu flera programmeringsspråk som användes.

Det finns flera datorspråk inklusive högnivå språk som: BASIC, C, C ++, Fortran, Pascal och Java. Varje virtuell maskin och CPU har sitt eget datorspråk, var och en med sina egna svagheter och styrkor, och varje virtuell maskin driver en tråd när den startas. Denna tråd kör programkoden i programmet. Det kan göra ett program springa snabbare och hjälpa till i deras prestanda och användbarhet, särskilt när flera trådar används.

Virtuella maskiner, som Java-virtuell maskin, stödjer ett multi-threading-koncept med högre prioritetstrådar som först exekveras under lägre prioritetstrådar, vilket säkerställer en rättvis fördelning av tidsbehandlingen.

Det använder trådhanteringsmetoder som kan skapa, kontrollera och avsluta flödet av kontroller eller trådar i ett delat utrymme. Två av dessa trådhanteringsmetoder är väntetiden och sömnmetoderna.

Dessa två metoder är separata. Sömnmetoden kontrollerar tråden och fördröjer nästa åtgärd medan väntelägesmetoden inte kontrollerar trådenes genomförande för att låta andra tråden köra.

Ventemetoden är definierad i Objeklassen och skickar den aktuella tråden till det ej körbara läget. Den används tillsammans med meddela och meddela alla metoder för att låta exekveringskoden för ett objekt pausa tillfälligt och återuppta det senare.

Det fungerar genom att anropa ett låsobjekt och låta den aktuella tråden synkronisera med den. Vänta släpper låset och lägger tråden i väntelistan och låter andra trådar synkronisera med det, vilket gör att den ursprungliga tråden vaknar. Programmeraren bestämmer den specifika tiden när körningen startas igen.

Sömnmetoden definieras å andra sidan som en statisk metod. Det fördröjer utförandet av trådar och inte objekt samt upphänger tråden som körs. Den skickar aktuella trådar till ett icke-runnbart tillstånd under en viss tid. Det kan påverka beteendet hos applikationer som är multi-threaded eftersom det håller synkroniseringslås av den aktuella tråden. När tråden är i ett synkroniserat block kan ingen annan tråd komma in i blocket.

Sammanfattning:

1. "Sömn" är en trådhanteringsmetod som definieras som en statisk metod medan "vänta" är en trådhanteringsmetod som definieras i Objeklassen.

2. Sömn är en metod som kör trådar medan vänta är en metod som kör objekt.

3. Sömn håller synkroniseringslås av den aktuella tråden och påverkar beteendet hos applikationerna medan väntetiden inte gör det.

4. Sömn styr kontrollen av tråden och tillåter inte andra trådar i ett synkroniserat block medan väntetiden inte kontrollerar tråden av tråden för att låta andra tråden köra.