Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Одолевают сомнения


Автор: Сергей 23.4.2002, 15:12
Привет всем!
Может кто-то поможет мне преодолеть сомнения :-)
Итак .

Написал  прогу,  которая принимает сообщения по сети. Говоря короче
в программе используются Новелловские функции, одна из них
создаёт буфер[200] куда заносятся приходящие сообщения.

Естественно было нужно как -то сделать , чтобы этот буфер постоянно опрашивался , и когда сообщение приходило, извлек. из буфера - и в окно...

Я сделал так , чтобы примерно каждые 5 секунд этот буфер проверялся на
!='\0' ...      Необходимо чтобы прога постоянно была загружена...

Будет ли такой опрос тормозить работу WIN-98 ? Есть ли другие решения
этого циклич. опроса ?  

Да, очень интрересно, по какому принципу построены  стандартные POPUP -
программы приёма сообщений...

Буду очень благодарен ответившим.

Автор: Dicobraz 24.4.2002, 07:15
Цитата

Я сделал так , чтобы примерно каждые 5 секунд этот буфер проверялся на
!='\0' ...      Необходимо чтобы прога постоянно была загружена...

Будет ли такой опрос тормозить работу WIN-98 ? Есть ли другие решения
этого циклич. опроса ?

Смотря как сделал. Если в бесконечном цикле гоняешь и проверяешь GetSystemTime(), то будет. А если Sleep(5000) - то нет. Еще можно таймер
(стандартная функция окна) использовать. :)
Стандартные программы используют событийную архитектуру. То есть получают сообщение по приходу данных и обрабатывают.
Посмотри доку по windows sockets. Если нету, постараюсь объяснить.

Автор: Jadd 27.5.2002, 16:44
Используй объект таймер. Это наиболее щадящий способ для виндов. А попапы пишутся так же...просто процесс висит в памяти, который обрабатывает сообщения (Messages) или ставит хуки (Hooks) на уже заданные сообщения. Все очень просто. ;)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)