Описание тега overlapped-io
2
ответа
Хук WSARecv: предотвращает получение пакета исполняемым файлом
Я работаю над DLL, которая перехватывает функции winsock2, используя C++ и обходные пути. Моя цель - изменить трафик TCP, который идет от исходного исполняемого файла и обратно. В какой-то момент мне нужно остановить доставку определенного пакета (ч…
06 авг '14 в 22:34
1
ответ
WIN32 Socket API: Отмена отправки / записи в сокет с использованием уведомлений о завершении на основе событий
С помощью сокета с перекрывающейся операцией выбирается уведомление о завершении на основе события; Есть 2 события, одно для данных, другое для отмены длительной отправки / записи: HANDLE events[] = { m_hDataEvent, m_hInterruptEvent }; затем вызывая…
24 май '12 в 18:13
2
ответа
Должен ли я использовать AcceptEx() или WSAAccept()?
Я использую Overlapped IO, я хочу принимать клиентские соединения, используя блокирующий вызов, так же, как я делаю с обычным accept(), Я не уверен но думаю что AcceptEx() не блокирует, пока WSAAccept() делает. Так и есть WSAAccept() похожий на acce…
25 фев '15 в 13:06
1
ответ
Зачем GetOverlappedResult нужен дескриптор файла?
Почему GetOverlappedResult нужен дескриптор файла? Это похоже на WaitForSingleObject(overlapped->hEvent) должно быть достаточно, чтобы дождаться события, чтобы перекрывающийся ввод-вывод завершился, так что же GetOverlappedResult использовать дес…
24 май '13 в 03:45
3
ответа
Приложение не получает последовательные данные от COM-порта - C++
Мое приложение неправильно получает данные от COM-порта. Это раньше работало. Я не знаю, что случилось. Я знаю, что по линии отправляются / принимаются правильные данные, потому что я вижу их на своем анализаторе протоколов. ПК попадает в WAIT_OBJEC…
12 янв '11 в 22:57
1
ответ
Блоки GetOverlappedResults с bWait = false
GetOverlappedResults() не возвращается вообще.Я запустил простой пример, приведенный ниже, и при изменении IP-адреса в сетевом интерфейсе устанавливается событие ручного сброса, и я вижу вывод "Таблица IP-адресов изменена..", но GetOverlappedResult…
12 окт '14 в 15:58
1
ответ
Неожиданный WSA_IO_PENDING от блокировки (с перекрывающимся атрибутом ввода / вывода) вызовы Winsock2
Короткая версия : я получаю WSA_IO_PENDING при использовании блокирующих вызовов API сокетов. Как мне справиться с этим? Сокет имеет перекрывающийся атрибут ввода / вывода и устанавливается с таймаутом. Длинная версия: Платформа: Windows 10. Visual …
20 сен '18 в 07:39
1
ответ
(MSDN) Сделать поток "оповещаемым" постоянно, не блокируя поток
Я использую асинхронные вызовы процессов (APC) для выполнения запросов ввода-вывода с перекрытием, используя ReadFileEx и WriteFileEx. Как определено в MSDN, эти подпрограммы завершения функции (APC) будут обрабатываться только в том случае, если по…
05 июл '18 в 18:01
1
ответ
Как мне преобразовать этот блокирующий режим ввода-вывода в перекрывающийся режим ввода-вывода на языке c в Windows?
Я учусь делать сокет-программирование и многопоточное программирование на C на Windows. Я разработал проект, в котором будет три типа узлов для резервного копирования (сервер, клиент и узел хранения). Я создал следующее, чтобы иметь один сервер и не…
31 мар '18 в 05:41
1
ответ
Параллельный метод асинхронного обратного вызова ввода-вывода
Я реализовал асинхронный ввод-вывод с обратным вызовом, когда я беспокоюсь о параллелизме. Я оспариваю вам, что, поскольку я всегда работаю с одним и тем же файлом, а физический ввод-вывод файла ОС по сути является синхронной операцией, мне не понад…
26 дек '12 в 15:18
0
ответов
Как тайм-аут WaitForMultipleObjectsEx до ReadTotalTimeoutConstant?
У меня есть программа, которая читает с последовательного порта, это делается с перекрытием ввода-вывода. Я не могу понять, как может превышаться тайм-аут WaitForMultipleObjects (200 мс), когда у меня меньше тайм-аут в вызове SetCommTimeouts (100 мс…
15 сен '15 в 15:59
1
ответ
Использование перекрытой структуры для обратного вызова?
У меня есть собственная перекрывающаяся структура для асинхронного ввода-вывода с использованием портов завершения ввода-вывода. Теперь я получаю уведомление о завершении чтения / записи. Могу ли я передать функцию CALLBACK в качестве параметра в пе…
05 окт '13 в 04:40
1
ответ
Windows WriteFile блокирует даже с FILE_FLAG_OVERLAPPED
У меня есть следующий код, который создает файл с помощью CreateFile с FILE_FLAG_OVERLAPPED флаг, а затем вызывает WriteFile 100 раз в цикле, передавая OVERLAPPED состав uint64_t GetPreciseTickCount() { FILETIME fileTime; GetSystemTimePreciseAsFileT…
30 мар '18 в 19:57
2
ответа
TCP-соединения с перекрывающимся вводом-выводом
Можно ли инициировать запрос TCP-соединения с перекрывающимся вводом-выводом и отменить его до завершения соединения в Windows? Мне нужно поддерживать как минимум Windows XP SP2.
10 окт '11 в 14:49
0
ответов
Асинхронная операция чтения на именованном канале?
Я хочу получать данные по именованному каналу асинхронно. Ниже приведен код моего сервера: bool bContinue = true; bool bMessageReceived = false; int iMessage; DWORD dwBytesRead = 0; OVERLAPPED oReadOverlapped = {0}; oReadOverlapped.hEvent = CreateEv…
08 окт '13 в 03:06
1
ответ
Процедура завершения сокета Windows после closesocket
Во время работы с сокетами Windows в режиме перекрытия и использования подпрограмм завершения (поэтому IOCP) для обратной связи я обнаружил следующий любопытный случай: Откройте сокет сервера, используя listen а также AcceptEx, Подключите клиентский…
26 июл '18 в 13:38
4
ответа
Использование перекрывающихся конфликтов ввода-вывода с C++ D'tor
Я пишу сервер для одного клиента (на данный момент), который имеет основной цикл, который обрабатывает клиентский запрос и отправляет соответствующий обработчик. для некоторых целей я хотел бы использовать перекрывающийся ввод-вывод MS (это только д…
03 окт '12 в 21:47
0
ответов
В чем преимущество использования класса Overlapped для асинхронной передачи данных?
У меня есть приложение, которое отправляет данные с и на конечную точку USB. Я могу использовать синхронные и асинхронные передачи данных. Последний может использоваться с или без перекрывающейся структуры. В асинхронном режиме я могу инициировать п…
04 авг '18 в 11:17
2
ответа
Как узнать, когда ReadFileEx() завершил ввод-вывод с перекрытием?
HasOverlappedIoCompleted() не работает с асинхронным вводом / выводом, начатым с ReadFileEx() а также WriteFileEx(), Фрагмент кода внизу демонстрирует это. В этом примере ReadFileEx() читает из канала, который не имеет ввода, поэтому чтение не будет…
05 дек '11 в 14:47
2
ответа
Быстрое чтение всего файла на сетевом диске (Windows, C/C++, C#, ...)
В последнее время у меня были проблемы с чтением больших файлов на сетевом диске, и я просто не могу точно определить, что я делаю неправильно. Я пробовал как в C++ (Unmanaged), так и в C#, и у меня были примерно одинаковые характеристики... которые…
26 фев '10 в 01:09