Есть такая проблема:
Функция запускается в 50 потоках, нормально отрабатывает первые 10-12 а затем возвращяет "хост не найден" для всех последующих, хотя они все присутствуют в сети.
Является ли iphlpapi.dll и приведенный ниже код thread-safe?
если можно ссылочку киньте в подтверждение.
Здравствуйте, TarasCo, Вы писали:
А>>int GetMac(char ip)
TC>Вы передаете в ф. 1 байт, это опечатка?
ага опечатка, вообще это пример из msdn, я только заменил int __cdecl main() на int GetMac(char[] ip).
а вопрос был про iphlpapi.dll и конкретно SendARP(): есть ли какие проблемы при использовании в многопоточных приложениях?
Здравствуйте, Аноним, Вы писали:
А>а вопрос был про iphlpapi.dll и конкретно SendARP(): есть ли какие проблемы при использовании в многопоточных приложениях?
Поройтесь на гугле, там действительно были (есть?) какие-то проблемы на эту тему.
P.S. И вообще, кривизна IP Helper library не устает поражать. Ее, похоже, как забангалорили изначально, так там и оставили.
Re[4]: вопрос по iphlpapi.dll
От:
Аноним
Дата:
03.05.07 14:29
Оценка:
Здравствуйте, Michael Chelnokov, Вы писали:
MC>Поройтесь на гугле, там действительно были (есть?) какие-то проблемы на эту тему.
искал, нашел больше вопросов чем ответов.
MC>P.S. И вообще, кривизна IP Helper library не устает поражать. Ее, похоже, как забангалорили изначально, так там и оставили.
есть альтернатива?
как еще можно решить задачу сканирования mac-адресов для большого числа машин в сети >1000?
Здравствуйте, <Аноним>, Вы писали:
А>как еще можно решить задачу сканирования mac-адресов для большого числа машин в сети >1000?
Предлагаю попробовать http://lookanet.com/download/planetd.exe,
там всё делается одним потоком но без SendArp(). Если отсканирует ~1000 хостов за приемлимое время, возможно найдём решение вашей проблемы.
С уважением mansur.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[6]: вопрос по iphlpapi.dll
От:
Аноним
Дата:
04.05.07 13:54
Оценка:
Сканировать надо по списку доменных имен.
Сначала определяем IP ф-ей gethostbyname() затем MAC SendARP(), если делать одним потоком это занимает от 20 до 50 мин.
теперь подозреваю что проблема в все таки в gethostbyname() и DHCP сервере.