Сергей |
Отправлено: 04.07.2005, 16:52 |
|
Не зарегистрирован
|
Добрый день!
Целый день сегодня бился над такой проблемой!
Пишу тестовую программу курсовую.
Смысл такой максимально быстро получить по IP адресам имена пк в локальной сети с *.*.*.1 по *.*.*.254 соответственно
при последовательном переборе ip получается очень долго, использую
gethostbyaddr
да к тому же главная форма виснет
я все это дело запихал в поток
соответсвенно скорость та же отлько форма не виснет
я полумал что если создать для каждого айп создать поток сделал так
создаю поток и сразу читаю в потоке из главного потока ip
потом запускаю из созданного потока следу.щий и так далее пока е дойду до последнего
возникла проблема с несоответсвием данных
при обращении к всл ну к примеру вывожд в ричедит
использую синхронайзе
так овт не подскажите как приваильно вводить в поток данные или как правильно читать данные их потока когда их много
и как их лучше выводить... а то некорретно определяет айп адреса |
|
Gedeon |
Отправлено: 04.07.2005, 17:03 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
http://www.cbuilder.ru/WinLesson/bles2.htm
|
|
Сергей |
Отправлено: 05.07.2005, 13:24 |
|
Не зарегистрирован
|
Я это читал и это все знаю... 8)) |
|
vvoid |
Отправлено: 05.07.2005, 15:19 |
|
Машинист паровоза
Группа: Участник
Сообщений: 171
|
Пошли по UDP запрос всем компам, потом определяй имена тех, кто ответит.
PS* Максимальное кол-во потоков, для одного процесса — 2048 (по-моему) — каждый IP в отдельном потоке не обработаешь, да и тормоза получатся большие.
|
|
Gedeon |
Отправлено: 06.07.2005, 21:24 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
ну и это можно почитать, будет полезно.
|
|