🧵Thread Pool (Executors) Kavramı
Java, Kotlin ThreadPoolExecuter, Executors kavramları ve birden fazla thread ile işlerin yönetimi multithreding
Last updated
Java, Kotlin ThreadPoolExecuter, Executors kavramları ve birden fazla thread ile işlerin yönetimi multithreding
Last updated
© 2024 ~ Yunus Emre Ak ~ yEmreAk
🚄 Yapılacak işler Task Queue içerisinde sıraya alınır
🦄 Her iş, tek tek oluşturulan Thread Pool üzerindeki boş bulunan thread üzerinde tamamlanır
💦 Tamamlanan işlerden sonra thread serbest bırakılır, Task Queue üzerinden yeni iş alınır
⚡ Fixed
Sabit sayıda thread ile havuz oluşturulur, boşta thread yoksa işler bekletilir
Genellikle tercih edilen en iyi durumdur
🤹♂️ Cached
Lazım oldukça thread oluşturulur,
Uzun süreli işlemlerde kullanılmaz, sistemin kaldıramayacağı kadar thread oluşturulabilir
🕐 Scheduled
Belirli aralıklarla işleri sırayla yapan thread yapısı
Periyodik olarak yapılacak işler
🦄 Single
Tüm işler için tek bir thread yapısı oluşturulur.
Tek bir iş için tercih edilir
🧛♂️ Work Stealing
İş için gerekli sayıda thread oluşturur
Çoklu işlem gücü olan makinelerde, paralelizm için kullanılır
shutdownNow()
Executor'u direkt olarak sonlandırır, verilen görevleri çalıştırmaz, olan görevler tamamlanır ama metotlar tamamlanmaz
isTerminated()
Kapatma sinyali aldığında ve executor işini bitirdiği zaman true
verir
isShutdown()
Kapatma sinyali aldığında true
verir
awaitTermination(long timeout,TimeUnitunit)
Thread'i executor görevini tamamlayıncaya kadar yada verilen süre kadar bloklar