Почему нельзя написать во внутреннем анонимном классе
doExpensiveOperation(i);
пишет что i должна быть final или effectively final .
for(int i = 0; i < 10; i++){
int count = i + 1;
linkedBlockingQueue.add(
new Runnable() {
@Override
public void run() {
doExpensiveOperation(count);
}
}
);
}