Saya memiliki skrip Perl pada sistem * nix yang, pada satu titik, sedang memproses 50.000 baris teks. Ini membutuhkan waktu. Saya mencoba menemukan cara yang ramah sumber daya untuk memberi tahu pengguna bahwa programnya tidak hang ketika sedang memproses semua teks ini.
Saat ini saya mencetak hasil secara realtime karena teks sedang diproses. Saya menyiram buffer output kemudian mencetak output pada satu baris dengan \r
. Ini tampaknya merupakan penggunaan sumber daya yang tidak perlu karena butuh waktu hampir dua kali lebih lama daripada ketika saya tidak mencetak apa-apa, tetapi seperti yang telah saya katakan, ketika mencetak tidak ada yang terlihat seperti program sedang menggantung.
Jadi pertanyaan saya: Apakah ada cara standar atau sederhana untuk memberi tahu pengguna bahwa program tersebut benar-benar berjalan sambil melakukan tugas yang berjalan lama?