Java tråd søvn

Java tråd søvn

Java tråd søvn

En tråd kan gjøres for å stoppe utførelsen i noen tid før den fortsetter å operere. Tråden anses å sove, i perioden den stopper. Men hva er en tråd? En tråd er et underprogram. Det er mulig å ha mer enn en tråd i ett program, som kjører samtidig. Hovedprogrammet i seg selv er hovedtråden. Et enkelt gjenget program er bare det normale programmet. I Java er det normale programmet klassen som har Main () -metoden. I et flertrådd program, kan hovedmetoden (), betraktes som hovedtråden.

En tråd kan opprettes ved å underklasse trådklassen. Tråden kan få sove. Denne artikkelen forklarer hvordan du får en tråd til å sove, som begynner med et sammendrag av hvordan du oppretter en ny tråd i Java. Trådklassen trenger ikke å importeres for å ha en tråd i programmet.

Artikkelinnhold

  • Sammendrag for å lage en tråd
  • Søvnsyntaks
  • Sover innen tråden innen tråden
  • Konklusjon

Sammendrag for å lage en tråd

En klasse for å lage fra trådklassen, kan være:

klasse THR utvider tråden
void mthd ()
System.ute.println ("en metode");

Klassetrådnavnet er thr. Den utvider tråden. Den har bare en metode som medlem. Hovedtråden i hovedklassen kan være:

public class theclass
public static void main (String [] args)
Thr Thr1 = new Thr ();
Thr1.start();
System.ute.println ("Noen hovedmetodeuttalelser");
Thr1.mthd ();

Trådobjektet er Thr1, instantiert fra THR. Etter å ha opprettet trådobjektet, må tråden (objektet) startes, for å kjøre, med uttrykket:

Thr1.start();

Rett etter dette punktet er det to tråder som kjører: hovedtråden, og Thr1. Fra dette punktet i tråden (hovedmetode), der det nye trådobjektet er opprettet, kan feltene og metodene til det nye trådobjektet, kalles. Utgangen til programmet ovenfor er:

Noen hovedmetodeuttalelser
en metode

Søvnsyntaks

Sleep () Syntaks er:

Offentlig statisk tomrom Sleep (Long Millis) kaster avbruttException

og

Offentlig statisk tomrom Sleep (Long Millis, Int Nanos) kaster avbrutt avException

Ikke bekymre deg for syntaksens kompleksiteter; De er enkle å bruke. Hver kan brukes i en trådmetode. Den anropende tråden i denne artikkelen er hovedtråden (hovedmetode).

Den første syntaksen har bare en parameter. Dette er i varigheten som tråden må sove i millisekunder. Hvis millisekunder ikke er finjustert nok for programmereren, kan programmereren bruke den andre syntaksen, hvor den første parameteren er antall millisekunder, og den andre parameteren er antallet nano sekunder for finjustering (mindre tid til måling ).

Sover innen tråden innen tråden

I syntaks er søvn () en statisk metode. Dette betyr at for å bruke det, bør klassenavnet brukes, i stedet for objektnavnet. Uttrykket "kaster avbrutt exception" er skrevet til høyre for metodens signatur av interesse og ikke sammen med søvn () metode påkallelse. Ovennevnte klasse, THR er modifisert som følger:

klasse THR utvider tråden
void mthd () kaster avbruttException
System.ute.println ("en metode");
Thr.søvn (1000);
System.ute.println ("en metode");

Metoden, mthd () vil skrive ut "en metode", sove (vent) i 1 sekund (1000 millisekunder), og deretter skrive ut "en metode" igjen. I hovedmetoden () er koden:

public class theclass
public static void main (String [] args)
Thr Thr1 = new Thr ();
Thr1.start();
System.ute.println ("Noen hovedmetodeuttalelser");
prøv
Thr1.mthd ();

fangst (avbrutt exception e)
System.ute.println ("unntaksmelding:" + e.getMessage ());


Påkallelsen, “Thr1.mthd (); ” er nå i prøveblokken. Det er den tilsvarende fangstblokken. Utgangen er:

Noen hovedmetodeuttalelser
en metode

og etter 1 sekund vises følgende linje:

en metode

To argumentasjon () -metode

Den andre syntaksen er en statisk metode. Dette betyr at for å bruke det, bør klassenavnet brukes. Uttrykket "kaster avbrutt exception" er skrevet til høyre for metodens signatur av interesse og ikke sammen med søvn () metode påkallelse. Så, ovennevnte klasse, THR er modifisert som følger:

klasse THR utvider tråden
void mthd () kaster avbruttException
System.ute.println ("en metode");
Thr.søvn (1000, 1000);
System.ute.println ("en metode");

Metoden, mthd () vil skrive ut "en metode", sove i 1 sekund og 1000 nanosekunder, og deretter skrive ut "en metode" igjen. I hovedmetoden () er koden:

public class theclass
public static void main (String [] args)
Thr Thr1 = new Thr ();
Thr1.start();
System.ute.println ("Noen hovedmetodeuttalelser");
prøv
Thr1.mthd ();

fangst (avbrutt exception e)
System.ute.println ("unntaksmelding:" + e.getMessage ());


Påkallelsen, “Thr1.mthd (); ” er nå i prøveblokken. Det er den tilsvarende fangstblokken. Utgangen er:

Noen hovedmetodeuttalelser
en metode

Og etter 1 sekund og 1000ns vises følgende linje:

en metode

Konklusjon

En tråd kan gjøres for å stoppe utførelsen i noen tid før den fortsetter å operere. Tråden anses å sove i perioden den stopper. Men hva er en tråd? En tråd er et underprogram. Det er mulig å ha mer enn en tråd, i ett program, som kjører samtidig. Hovedprogrammet i seg selv, er hovedtråden. Et enkelt gjenget program er bare det normale programmet. I Java er det normale programmet klassen som har Main () -metoden. I et flertrådd program, kan hovedmetoden (), betraktes som hovedtråden.

En tråd kan opprettes ved å underklasse trådklassen. Underklasse betyr å arve fra trådklassen. Tråden kan få sove. Å sove betyr at tråden slutter å fungere i noen tid. Når en tråd utfører, er det i stor grad metodene til objektet (klassen) som kjører, og egentlig ikke feltene. I Java -klassen kalles eiendommer felt. Så sovekoden må plasseres i en metode. Siden sleep () -metodene involverer et unntak, må prøvekampen-uttalelsen brukes i den pågående tråden. Trådeklassen trenger ikke å importeres, for å ha en tråd i programmet.