Innholdsfortegnelse:

Hvordan kommuniserer tråder med hverandre?
Hvordan kommuniserer tråder med hverandre?

Video: Hvordan kommuniserer tråder med hverandre?

Video: Hvordan kommuniserer tråder med hverandre?
Video: 38 - Hvordan kommunikerer man bedst i parforholdet? Vi er meget hårde ved hinanden 2024, Desember
Anonim

Det er tre måter for tråder til kommunisere med hverandre . Den første er gjennom vanlig delte data. Alle tråder i samme program deler den samme minneplassen. Hvis en gjenstand er tilgjengelig for ulike tråder så disse tråder dele tilgang til objektets datamedlem og dermed kommunisere hverandre.

Folk spør også, hvordan kommuniserer du mellom to tråder?

Forstå prosessen med kommunikasjon mellom tråder

  1. Tråder går inn for å få lås.
  2. Lås er anskaffet av på tråden.
  3. Nå går tråden til ventetilstand hvis du kaller wait()-metoden på objektet.
  4. Hvis du kaller notify()- eller notifyAll()-metoden, flyttes tråden til den varslede tilstanden (kjørbar tilstand).

For det andre, hva er ventemetoden i tråden? For å si det enkelt, vente () er en forekomst metode som brukes til tråd synkronisering. Det kan kalles på ethvert objekt, som det er definert rett på java. lang. Objekt, men det kan bare kalles fra en synkronisert blokk. Den frigjør låsen på objektet slik at en annen tråd kan hoppe inn og skaffe seg en lås.

Videre, hvordan oppnår du kommunikasjon mellom tråder?

Kommunikasjon mellom tråder i Java

  1. wait()-Den forteller den anropende tråden å gi opp låsen og gå i dvale til en annen tråd kommer inn på samme monitor og kaller notify().
  2. notify()-Den vekker en enkelt tråd som heter wait() på det samme objektet.
  3. notifyAll()-Det vekker alle trådene som kaller wait() på det samme objektet.

Hvordan bruker du vente og varsle i Java-tråder?

Når synchronized(this) brukes, må du unngå å synkronisere påkallelser av andre objekters metoder. vente () forteller den som ringer tråd å gi opp skjermen og gå i dvale til en annen tråd går inn på samme monitor og ringer gi beskjed (). gi beskjed () våkner den første tråd som ringte vente () på samme objekt.

Anbefalt: