Здравствуйте, vpchelko, Вы писали:
V>На проекте столкнулся с проблемой (написано очень много кода, и приходится его разгребать). Не стабильно появляются зависания UI.
V>Дело в том, что для каждого запроса используется модель:
V>запрос делается в потоке (поток может зависнуть), а приложение ждет когда поток отработает запрос по типу WaitForSignal(timeInterval), на время ожидания приложение зависает
в некоторых местах стоит даже InfiniteTimeout
.
V>Единственное, что приходит в голову переписать всё на#ер. Но заказчик на это не пойдёт.
V>Подскажите, пожалуйста, какую-нибудь схему, чтобы убрать подобные зависания с минимальными изменениями кода. Ибо от изучения такого кода, начинают мозги разжижаться, и уже ни чего не соображаешь ...
Тебе нужно централизовать обработку запросов, т.е. написать транспортный уровень через который и будет происходить общение клиента с сервером, и тогда будет достаточно в классе "транспорт" сделать правильный поток ...