![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Сергей |
|
|||
Unregistered |
Привет всем!
Может кто-то поможет мне преодолеть сомнения :-) Итак . Написал прогу, которая принимает сообщения по сети. Говоря короче в программе используются Новелловские функции, одна из них создаёт буфер[200] куда заносятся приходящие сообщения. Естественно было нужно как -то сделать , чтобы этот буфер постоянно опрашивался , и когда сообщение приходило, извлек. из буфера - и в окно... Я сделал так , чтобы примерно каждые 5 секунд этот буфер проверялся на !='\0' ... Необходимо чтобы прога постоянно была загружена... Будет ли такой опрос тормозить работу WIN-98 ? Есть ли другие решения этого циклич. опроса ? Да, очень интрересно, по какому принципу построены стандартные POPUP - программы приёма сообщений... Буду очень благодарен ответившим. |
|||
|
||||
Dicobraz |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 26.3.2002 Где: Пермь Репутация: нет Всего: нет |
Смотря как сделал. Если в бесконечном цикле гоняешь и проверяешь GetSystemTime(), то будет. А если Sleep(5000) - то нет. Еще можно таймер (стандартная функция окна) использовать. ![]() Стандартные программы используют событийную архитектуру. То есть получают сообщение по приходу данных и обрабатывают. Посмотри доку по windows sockets. Если нету, постараюсь объяснить. |
|||
|
||||
Jadd |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 27.5.2002 Репутация: нет Всего: нет |
Используй объект таймер. Это наиболее щадящий способ для виндов. А попапы пишутся так же...просто процесс висит в памяти, который обрабатывает сообщения (Messages) или ставит хуки (Hooks) на уже заданные сообщения. Все очень просто.
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |