Sov vs Vent
Maskiner som computere bruger kunstigt sprog til at oprette programmer, styre dem og tillader dem at kommunikere instruktioner og udtrykke algoritmer. Dette sprog kaldes programmeringssprog.
Før fremkomsten af computere var programmeringssprog allerede blevet brugt i væve og klaver. Efterhånden som computerbrug blev mere almindelig, blev der nu brugt flere programmeringssprog.
Der er flere computersprog inklusive sprog på højt niveau såsom: BASIC, C, C ++, Fortran, Pascal og Java. Hver virtuel maskine og CPU har sit eget computersprog, hver med sine egne svagheder og styrker, og hver virtuel maskine kører en tråd, når den startes. Denne tråd kører applikationskoden i programmet. Det kan få et program til at køre hurtigere og hjælpe med deres ydeevne og nyttighed, især når der bruges flere tråde.
Virtuelle maskiner, såsom den virtuelle Java-maskine, understøtter et multitrådekoncept med tråde med højere prioritet udført først over trådene med lavere prioritet, hvilket sikrer en retfærdig opdeling af tidsforarbejdning.
Det bruger trådstyringsmetoder, som kan oprette, kontrollere og afslutte strømmen af kontroller eller tråde i et delt rum. To af disse trådhåndteringsmetoder er ventetiden og søvnmetoderne.
Disse to metoder er adskilte. Dvalemetoden styrer udførelsen af tråden og forsinker den næste handling, mens ventemetoden ikke kontrollerer udførelsen af tråden for at lade andre tråde køre.
Ventemetoden er defineret i objektklassen og sender den aktuelle tråd til den ikke kørbare tilstand. Det bruges sammen med notify og notifyAlle metoder til at lade udførelseskoden af et objekt midlertidigt pause og genoptage det senere.
Det fungerer ved at kalde på et låseobjekt og lade den aktuelle tråd synkronisere med det. Vent frigør låsen og sætter tråden på ventelisten og lader andre tråde synkroniseres med den, hvilket får den originale tråd til at vågne op. Programmereren bestemmer det specifikke tidspunkt, hvor udførelsen starter igen.
På den anden side er søvnmetoden defineret som en statisk metode. Det forsinker udførelsen af tråde og ikke genstande og suspenderer den tråd, der udføres. Det sender aktuelle tråde til den ikke-kørbare tilstand i et stykke tid. Det kan påvirke opførslen af applikationer, der er flertrådede, fordi det holder synkroniseringslåsene for den aktuelle tråd. Når tråden først er i en synkroniseret blok, kan ingen anden tråd komme ind i blokken.
Resumé:
1. “Sleep” er en trådstyringsmetode, der er defineret som en statisk metode, mens “vent” er en trådstyringsmetode, der er defineret i objektklassen.
2.Sleep er en metode, der udfører tråde, mens ventetid er en metode, der udfører objekter.
3.Sleep holder synkroniseringslåsen på den aktuelle tråd og påvirker opførelsen af applikationer, mens ventetiden ikke gør det.
4.Sleep kontrollerer udførelsen af tråden og tillader ikke andre tråde i en synkroniseret blok, mens vent ikke kontrollerer udførelsen af tråden for at lade andre tråde køre.