Junior — Middle
ExecutorService istifadəsi ilə Thread sinfi vasitəsilə yeni iş parçaları yaratmaq arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Java-da ExecutorService istifadəsi, Thread sinfi vasitəsilə birbaşa threadlərin yaradılmasından aşağıdakı şəkildə fərqlənir:
- Thread hovuzunun idarə olunması:
ExecutorServiceçoxsaylı tapşırıqları yerinə yetirmək üçün thread hovuzunun yaradılmasına və yenidən istifadəsinə imkan verir, bu da threadlərin yaradılması və məhvi ilə əlaqəli xərcləri azaldır. - Həyat dövrünün idarə olunması:
ExecutorServicedüzgün şəkildə sonlandırmaq, tapşırıqların tamamlanmasını gözləmək və tapşırıq növbəsini idarə etmək üçün metodlar təqdim edir. - Kodun sadələşdirilməsi: Əl ilə threadlərin yaradılması və işə salınması yerinə, sadəcə tapşırıqları
ExecutorService-ə göndərmək olar, o isə onları threadlər arasında paylayacaq.
Nümunə:
ExecutorService executor = Executors.newFixedThreadPool(3);
executor.submit(() -> {
System.out.println("Thread hovuzunda tapşırıq icra olunur");
});
executor.shutdown();
Əks halda, Thread istifadə edərkən, hər bir thread-i əl ilə yaratmaq və işə salmaq lazımdır, bu isə daha az səmərəli və daha çətindir.