#c# #windows-mobile #compact-framework #windows-mobile-6
#c# #Windows-mobile #compact-framework #Windows-mobile-6
Вопрос:
Я разрабатываю приложение для Windows Mobile на c #, которое вызывает веб-службу в отдельном потоке пользовательского интерфейса. Этот поток запускается каждые несколько минут по таймеру.
Моя проблема в том, что если ручное устройство переходит в спящий режим, когда оно просыпается, ОС, похоже, выгружает сеть, а затем перезапускает сеть примерно через секунду.
Результатом этого чаще всего является сбой моего приложения.
Кто-нибудь сталкивался с подобным сценарием?
Кому-нибудь приходилось обходить эту проблему?
Любая помощь или комментарии будут получены с благодарностью.
Спасибо
Ответ №1:
Похоже, вам следует добавить некоторую обработку исключений в свой поток.
Окружите свой сетевой код блоком try catch и повторите операцию позже:
try {
// your code
}
catch (Exception ex)
{
// add some logging
}
Комментарии:
1. У меня есть некоторая обработка исключений в качестве своего рода улова для записи в файл журнала. Ваше предложение перехватить вещи на более низком уровне и повторить попытку стоит изучить. Спасибо
2. Когда ваше приложение выходит из строя, у вас определенно возникает какое-то необработанное исключение.
3. Я применил некоторую обработку исключений и ведение журнала для всех вызовов моей веб-службы. Кажется, все работает нормально. Спасибо за руководство.