Оффтоп:
Складывается ощущение, что раньше программы зависали чаще (на неопределённый срок). Т.е. сейчас тоже зависают, то повисят-повисят и их отпустят. Интересно, это субьективное восприятие или изменилось что-то фундаментальное, что позволяет избежать зацикливания? Пока что две догадки:
1. Раньше постоянно использовали потоки в прикладном ПО, но не особо умело их синхронизировали.
2. Мб использовали какие-нибудь компактные переменные-счётчики в циклах, которые могли переполняться и бегать по кругу.