Being in awe of your experience, I'm hesitant to say otherwise, but in my experience,turning off buffering and printing some sort of progressing indicator, (.,%,etc) every x operation works 100% percent of the time in my experience and it's a lot simpler. I'm not saying this is the optimal solution for every problem, but I don't really see why it's not reliable in your opinion.