Почему весь процесс ждет 10 секунд, прежде чем отобразить результаты в следующем коде? Я ожидал, что он будет показывать каждую итерацию каждую 1 секунду:
my @array = (1..10); for (reverse(@array)){ print $_, "\t"; sleep 1; } print "\n";
Вы страдаете от буферизации . Добавьте это перед вашим для l oop в flu sh буфере вывода (см. $OUTPUT_AUTOFLUSH в perlvar ):
$OUTPUT_AUTOFLUSH
$| = 1;