Приложение зависает или зависает из-за настройки openTimeOut - PullRequest
0 голосов
/ 02 апреля 2012

В моем приложении я установил openTimeOut на 1 минуту.Теперь, если служба остановлена ​​или сервер не работает, это вызывает проблему.

Мне нужно загрузить формы на основе выходных данных из службы.Я звоню в сервис при загрузке содержимого формы.Теперь, если сервер остановлен, он будет висеть в интерфейсе пользователя до openTimeOut сервиса.Основная проблема заключается в том, что приложение использует несколько служб, а для некоторых других служб время ожидания составляет 35 секунд, а если время ожидания истекло, оно перезапускает приложение, и моя служба все еще находится в режиме openTimeOut, что приводит к сбою приложения.

Что может быть лучшим решением для этой проблемы.

Мой вопрос: как лучше всего справиться с этим условием - уменьшить openTimeOut или вызвать службу в другом потоке.

1 Ответ

1 голос
/ 02 апреля 2012

Обязательно вызовите службу в другом потоке (или, если вы используете автоматически сгенерированный прокси службы, вы можете переключать Async версии методов, что равносильно тому же).Поток пользовательского интерфейса не должен зависеть от длительных операций или операций, которые могут блокировать.

Значение OpenTimeOut не будет значительным для зависания приложения (потому что это перестанет происходить), но вы можетеЯ хочу понизить его немного, потому что 1 минута, возможно, слишком длинна, чтобы обнаружить, что не существует никакого подключения к услуге.

...