Atomi

Kirjoittaja: Monica Porter
Luomispäivä: 17 Maaliskuu 2021
Päivityspäivä: 25 Kesäkuu 2024
Anonim
TERNOVOY feat. Миша Марвин - Атомы (lyric video)
Video: TERNOVOY feat. Миша Марвин - Атомы (lyric video)

Sisältö

Määritelmä - mitä Atomic tarkoittaa?

Atomic on työkalupakki muuttuvista java.util.concurrent.atomic -pakettiluokista, jotka auttavat lukitus- ja odottamattomien algoritmien kirjoittamisessa Java-kielen kanssa. Algoritmi, joka vaatii vain osittaisen säikeen jatkuvalle etenemiselle, on lukoton. Odottamattomassa algoritmissa kaikki säikeet etenevät jatkuvasti, jopa säievian tai viiveen tapauksissa. Lukitus- ja odottamattomat algoritmit tunnetaan myös nimellä estämättömät algoritmit. Estämättömiä algoritmeja käytetään prosessien ja säikeiden ajoittamiseen käyttöjärjestelmän ja Java-virtuaalikoneen tasoilla.


Johdanto Microsoft Azureen ja Microsoft Cloud | Tämän oppaan läpi opit mitä pilvipalvelussa on kyse ja kuinka Microsoft Azure voi auttaa sinua siirtämään ja johtamaan yritystä pilvestä.

Techopedia selittää Atomicin

Kaikkien java.util.concurrent.atomic-pakettiluokkien nimissä on "atominen" etuliite. Java.util.concurrent.atomic-paketissa on saatavana erityyppisiä atomimuuttujia, mukaan lukien:

  • AtomicBoolean
  • AtomicInteger
  • AtomicIntegerArray
  • AtomicIntegerFieldUpdater
  • AtomicLong
  • AtomicLongArray
  • AtomicLongFieldUpdater
  • AtomicReference
Java-kielellä synkronointi koordinoi pääsyä jaettuihin ketjukenttiin ja sallii lukkoja pitävät ketjut vain käyttää lukon suojaamia muuttujia. Tämän säikeen muunnelmat ovat näkyvissä seuraavassa säikeessä, mutta vasta sen jälkeen kun lanka vapauttaa lukon.
Esimerkki on tilanne, jossa säie A pitää lukon. A voi käyttää ja tehdä muutoksia vain tällä lukolla suojattuihin muuttujiin. Jos säie B pitää tätä lukkoa A: n jälkeen, vain B voi tarkastella A: n muutoksia muuttujissa, joita kyseinen lukko suojaa. Suurin lukitusongelma ilmenee, kun B yrittää hankkia A: n hallussa olevan lukon. Tässä tapauksessa B estetään odottamaan, kunnes lukko on käytettävissä. Estämättömät algoritmit ratkaisevat tämän ongelman.

Atomiluokkien rakentamisen päätarkoitus on toteuttaa esteettömät tietorakenteet ja niihin liittyvät infrastruktuuriluokat. Atomiset luokat eivät ole korvaavia java.lang.Integer- ja siihen liittyville luokille. Useimmat java.util.conqurent -pakettiluokat käyttävät atomimuuttujia synkronoinnin sijasta joko suoraan tai epäsuorasti. Atomisia muuttujia käytetään myös suuremman läpimenon saavuttamiseksi, mikä tarkoittaa korkeampaa sovelluspalvelimen suorituskykyä. Tämä määritelmä kirjoitettiin Java-sivustoon