Junior — Middle
84
Каким образом можно определить количество обработанных записей в основном потоке, учитывая работу нескольких потоков?
Сұралған компаниялар
AI-дан жауап
sobes.tech AI
Чтобы определить количество обработанных записей в основном потоке при работе с несколькими потоками в Java, нужно использовать потокобезопасные механизмы для подсчёта.
Один из распространённых подходов — использовать класс AtomicInteger из пакета java.util.concurrent.atomic. Каждый поток после обработки записи увеличивает этот счётчик, а основной поток может в любой момент получить текущее значение.
Пример:
import java.util.concurrent.atomic.AtomicInteger;
public class Processor {
private AtomicInteger processedCount = new AtomicInteger(0);
public void processRecord() {
// обработка записи
processedCount.incrementAndGet();
}
public int getProcessedCount() {
return processedCount.get();
}
}
Таким образом, основной поток может вызывать getProcessedCount(), чтобы узнать, сколько записей было обработано всеми потоками вместе.