Junior — Middle
Quale compito viene risolto con un pool di thread e come viene utilizzato nella programmazione?
sobes.tech AI
Risposta dell'AI
Пул потоков (thread pool) используется для управления набором потоков, которые повторно используются для выполнения множества задач. Это позволяет избежать затрат на создание и уничтожение потоков при каждой задаче, что повышает производительность и снижает нагрузку на систему.
В программировании пул потоков создаётся один раз, а затем задачи ставятся в очередь. Свободный поток из пула берёт задачу из очереди и выполняет её. После завершения поток возвращается в пул и готов к следующей задаче.
Пример на Java:
ExecutorService executor = Executors.newFixedThreadPool(5);
executor.submit(() -> {
System.out.println("Выполнение задачи в пуле потоков");
});
executor.shutdown();
Здесь создаётся пул из 5 потоков, и задача выполняется одним из них.