|
Не работает нормально Ping.SendAsync
|
|||
---|---|---|---|
#18+
Добрый день всем! Пытаюсь в службе пропинговать список адресов: protected override void OnStart(string[] args) { ... pingSender.PingCompleted += new PingCompletedEventHandler(PingCompletedCallback); ... foreach (DataRow dr in ds.Tables["Controllers"].Rows) pingSender.SendAsync(IPAddress.Parse(dr["IP"].ToString()), timeout, buffer, options); eventLog1.WriteEntry("Возврат из OnStart"); } После первого захода в PingCompletedCallback служба останавливается с таким сообщением: Служба имя_службы была запущена и затем остановлена. Некоторые службы автоматически останавливаются если не используются другими службами и программами. На другом форуме я нашел, что OnStart при запуске должно вернуть значение чтобы служба не останавливалась, я поставил выдачу сообщения за циклом, но она не доходит дотуда. Почему? Ведь SendAsync асинхронный метод и сразу же должен возвращать управление в вызывающую функцию. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2013, 14:20 |
|
Не работает нормально Ping.SendAsync
|
|||
---|---|---|---|
#18+
Exception, случаем, нигде не возникает? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2013, 10:43 |
|
Не работает нормально Ping.SendAsync
|
|||
---|---|---|---|
#18+
Всё разобрался. Возникал ексепшен, на втором вызове SendAsync ругался что уже одна SendAsync вызвана. Я это всё в отдельный класс инкапсулировал, щас у каждого вызова свой экземпляр класса, так работает. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2013, 13:06 |
|
|
start [/forum/topic.php?fid=20&fpage=163&tid=1404671]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 307ms |
total: | 442ms |
0 / 0 |