Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
route66
489 / 422 / 53
Регистрация: 29.04.2011
Сообщений: 443
#1

ReadFile() без ожидания - C++

12.03.2014, 21:20. Просмотров 240. Ответов 0
Метки нет (Все метки)

Передача сообщений посредством именованных каналов (pipes).

Как использовать функцию ReadFile() для получения сообщения из канала chan [n] без ожидания появления сообщения в канале? Т.е., если сообщения в канале в данный момент нет, не ожидать его появления.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
while (1) 
        {
            // Если в канале есть сообщение,
            if (ReadFile (chan [n], &foo, 4, &foo, 0)) 
            {
                WriteFile (chan [n], &fuel, 4, &foo, 0); // прочитать сообщение
                break;
            }
 
            // Если в канале нет сообщения, не ждать, пока оно появится, 
            // а перейти к выполнению последующих инструкций
            n++;
            if (n > 3) n = 0;
        }
По аналогии, для чтения коротких сообщений, в этом случае, удобна функция PeekMessage():
C++
1
2
3
4
if (PeekMessage (&msg, 0, WM_USER + n, WM_USER + n, PM_REMOVE))
{
    ...
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2014, 21:20     ReadFile() без ожидания
Посмотрите здесь:

Ввод без ожидания стандартными средствами - C++
Здравствуйте. Делаю консольный тетрис в образовательных целях. Необходимо сделать ввод, чтобы я мог управлять падающей фигурой, но тут я...

Осуществить движение змейки без задержки на ожидания ввода - C++
Я вот пишу змейку и у меня встал вопрос. Змейка движется сама, то есть мы управляем только ее поворотом. Но управление производится с...

[C] ReadFile/WriteFile - C++
Всем доброго времени суток! Есть вроблема с програмкой ,а именно: Unhandled exception at 0x010b1493 in lab3.exe: 0xC0000005: Access...

проблема с ReadFile() - C++
Здравствуйте. Функция ReadFile() заполняет буфер нулями. Из за чего такое может быть? Кроме того что ничего нету по заданному пути.

функция readfile и createfile - C++
почему вылетает ошибка int error; HANDLE HFile; OFSTRUCT OFFile; HFile=CreateFile("C:\\1.txt",GENERIC_READ,0,0,OPEN_EXISTING,0,0); ...

Не работает ReadFile() при подключении своей библиотеки - C++
Вот исходник: файл My_Dll.h // My_Dll.h /* #ifndef MYLIBAPI #define MYLIBAPI __declspec(dllimport)

Как правильно прочитать текстовый файл с помощью ReadFile? - C++
Как правильно прочитать текстовый файл с помощью ReadFile и сделать каждую новую строчку переменной?(нужно 4 строчки) Добавлено...

функция ожидания vc++ - C++
как приостановить на нужное время выполнение кода в MFC-проге, но чтоб в окошке продолжали обрабатываться события и таймер? пробовал...

Режим ожидания в С++ - C++
Помогите пожалуйста, как сделать режим ожидания ввода пользователя в консольном приложении, чтобы программа сразу не закрывалась. Я до...

Строка ожидания и загрузки - C++
Еще раз привет всем. Может кто нибудь знает как на С++ написать строку ожидания типа Please wait... и чтобы эти "три точки" появлялись и...

Таймер ожидания внутри цикла - C++
Ребят, задача не из простых, т.к. в тряске поисковиков я не нашёл, либо не понял как работают "их" методы. Нужна высокая точность...

Таймер ожидания для recvfrom (сокеты, UDP) - C++
Как установить таймер ожидания для функции recvfrom?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru