Вход в статистику
Логин:
Пароль:
Забыли пароль?
www.realnetspb.ru



Подключиться

409-00-09
info@realnetspb.ru support@realnetspb.ru
служба технической поддержки
Обратная связь





Высокоскоростной Интернет для дома и офиса ● Цифровое IPTV ● Бесплатное подключение ● Бонусы и акции
Круглосуточная техническая поддержка ● Компьютерная помощь на дому ● Беспроводной доступ Wi-Fi
Личный кабинет

Авиабилеты в Турцию

14.07.2016

Сильной стороной синхронных RPC является простота: их очень легко понять и реализовать. Но простота имеет свою цену - вызывающие потоки блокируются. Разумеется, это может быть вполне приемлемым для вызовов в рамках одного процесса, но часто выполнение удалённых вызовов происходит в коде, совершенно неизвестном для разработчика клиентской части. Длительность блокировки вызывающего потока может зависеть от изменений в реализации удалённой серверной части. Как следствие синхронные вызовы удалённых процедур могут непредсказуемым образом влиять на отзывчивость приложений. Часто отрицательного воздействия на UI-поток можно избежать, выполняя все удалённые вызовы в рабочих потоках, запускаемых асинхронно из UI-потока. Но если поток-сервер заблокируется, поток-клиент также заблокируется па неопределённое время, при этом сам поток и все его объекты продолжат занимать память. Такая ситуация повышает вероятность утечек памяти. Хотите отдохнуть? Возьмите авиабилеты в турцию.

Описанную проблему помогают решить асинхронные RPC! Вместо перекладывания реализации асинхронной стратегии на клиента можно определить удалённые методы с поддержкой асинхронного выполнения. Поток-клиент инициализирует транзакцию через асинхронный RPC и сразу же получает управление обратно. Объект Binder передаёт эту транзакцию в процесс-сервер и закрывает соединение клиента с сервером.

Для асинхронных методов тип возвращаемого значения обязательно должен быть объявлен как void, а кроме того, асинхронные методы не должны принимать аргументов, объявленных как out или inout. Для получения результатов реализация должна предусматривать использование обратного вызова {callback).








 
© 2001-2014 ООО Реалнет-СПб
Услуги: бесплатное подключение к Интернет, цифровое IPTV, каналы в HD-качестве, ПО по подписке: антивирусы и родительский контроль,
служба технической поддержки и компьютерной помощи, настройка Wi-Fi - роутера, подключение Wi-Fi.