Ну допустим приходит пользователю сообщение из серверной процедуры, а прога продолжает "висеть" на сервере. Пользователю что от этого сообщения? Зааплодировать? Или в обморок упасть? Все равно как-то активно отреагировать на это сообщение (в смысле работать с программой, а не пернуть от удивления) он сможет только когда управление перейдет на клиента.
Фоновое задание, из него к примерю запись состояния в константу к примеру, а на клиенте обработчик ожидания с проверкой этой константы (или там вообще через константы подавать команды фоновому заданию во время его исполнения )
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший