Junior — Middle
Кадом иҷрои интерфейси ExecutorService-ро медонӣ ва онҳо чӣ фарқ доранд?
sobes.tech AI
Ҷавоб аз AI
ExecutorService — бу интерфейс барои идоракунии пулҳои сӯзанҳо ва иҷрои асинхронӣ кардани вазифаҳо. Иҷрои асосии стандартии Java:
- ThreadPoolExecutor — самараноктарин ва маъмултарин иҷроиш, имкон медиҳад, ки андозаи пул, навбатии вазифаҳо ва сиёсати идоракунии борро танзим кардан.
- ScheduledThreadPoolExecutor — васеъкунии ThreadPoolExecutor, дастгирӣ мекунад нақшаи вазифаҳо бо таъхир ё иҷрои даврӣ.
- ForkJoinPool — барои вазифаҳо, ки метавонанд ба вазифаҳои зер тақсим шаванд (дар рамзи Fork/Join истифода мешавад), барои ҳисобҳои параллелӣ самаранок аст.
Фарқиятҳо:
- ThreadPoolExecutor барои мақсадҳои умумӣ мувофиқ аст.
- ScheduledThreadPoolExecutor — барои вазифаҳо бо таймерҳо.
- ForkJoinPool — барои параллелизми рекурсивӣ.
Масалан барои сохтани ThreadPoolExecutor:
ExecutorService executor = Executors.newFixedThreadPool(4);
executor.submit(() -> System.out.println("Вазифа иҷро шуд"));
executor.shutdown();