Rumah Pengembangan Apa itu atom di java? - definisi dari techopedia

Apa itu atom di java? - definisi dari techopedia

Daftar Isi:

Anonim

Definisi - Apa yang dimaksud dengan Atomic?

Atomic adalah toolkit dari variabel paket java.util.concurrent.atomic, yang membantu dalam penulisan kunci dan algoritma bebas-tunggu dengan bahasa Java. Algoritma yang hanya membutuhkan sebagian utas untuk kemajuan konstan bebas dari penguncian. Dalam algoritme bebas-tunggu, semua utas membuat kemajuan terus-menerus, bahkan dalam kasus kegagalan atau keterlambatan utas. Algoritma kunci dan tunggu-bebas juga dikenal sebagai algoritma nonblocking. Algoritma nonblocking digunakan untuk penjadwalan proses dan utas di sistem operasi dan level mesin virtual Java.

Techopedia menjelaskan Atomic

Semua kelas paket java.util.concurrent.atomic memiliki awalan "atom" dalam namanya. Ada berbagai jenis variabel atom yang tersedia di paket java.util.concurrent.atomic, termasuk:

  • AtomicBoolean
  • AtomicInteger
  • AtomicIntegerArray
  • AtomicIntegerFieldUpdater
  • AtomicLong
  • AtomicLongArray
  • AtomicLongFieldUpdater
  • Referensi Atom
Dalam bahasa Jawa, sinkronisasi mengoordinasikan akses ke bidang utas bersama dan hanya memungkinkan utas menahan kunci untuk mengakses dan memodifikasi variabel yang dilindungi oleh kunci. Modifikasi utas ini terlihat oleh utas yang mengikuti, tetapi hanya setelah utas melepaskan kunci.

Contohnya adalah skenario di mana utas A memegang kunci. A hanya dapat mengakses dan membuat perubahan pada variabel yang dilindungi oleh kunci ini. Jika utas B memegang kunci ini setelah A, maka hanya B yang dapat melihat perubahan A pada variabel yang dilindungi oleh kunci tertentu. Masalah utama dengan penguncian terjadi ketika B mencoba untuk mendapatkan kunci yang dipegang oleh A. Dalam hal ini, B diblokir untuk menunggu sampai kunci tersedia. Algoritma nonblocking menyelesaikan masalah ini.


Tujuan utama di balik pembuatan kelas atom adalah untuk mengimplementasikan struktur data nonblocking dan kelas infrastruktur terkait. Kelas atom tidak berfungsi sebagai pengganti untuk java.lang.Integer dan kelas terkait. Kebanyakan kelas paket java.util.concurrent menggunakan variabel atom alih-alih sinkronisasi, baik secara langsung maupun tidak langsung. Variabel atom juga digunakan untuk mencapai throughput yang lebih tinggi, yang berarti kinerja server aplikasi yang lebih tinggi.

Definisi ini ditulis dalam konteks Jawa
Apa itu atom di java? - definisi dari techopedia