Sobes.tech
Junior — Middle

java.util.concurrent пакетида кўп ишлов беришни ташкил қилиш учун асосий primitives ва инструментларни номлай оласизми?

sobes.tech AI

AIdan javob

java.util.concurrent paketida, ko'p ipli bajarishni tashkil qilish uchun bir nechta asosiy primitive va vositalar mavjud:

  • Executor va ExecutorService — iplar havuzini boshqarish va vazifalarni asinxron bajarish uchun interfeyslar.
  • Future va CompletableFuture — asinxron hisoblash natijalarini olish uchun.
  • CountDownLatch — bir yoki bir nechta iplar boshqalar bajarilishini kutishi uchun imkon beradi.
  • CyclicBarrier — bir nechta iplarni sinxronlashtiradi, ularni bir-birini kutishga majbur qiladi.
  • Semaphore — bir vaqtning o'zida resursga kirish mumkin bo'lgan iplar sonini cheklaydi.
  • ReentrantLock — ilg'or blokirovka mexanizmi, urinish va timeout imkoniyatlari bilan.
  • Kengaytirilgan kolleksiyalar (masalan, ConcurrentHashMap, CopyOnWriteArrayList) — ip xavfsiz kolleksiyalar.
  • Atomik o'zgaruvchilar (AtomicInteger, AtomicLong va boshqalar) — blokirovkasiz atomik operatsiyalar uchun.

ExecutorService dan foydalanish misoli:

ExecutorService executor = Executors.newFixedThreadPool(2);
executor.submit(() -> {
    System.out.println("Alohida ipda bajarildi vazifa");
});
executor.shutdown();