Книга: Системное программирование в среде Windows
Перекрывающийся ввод/вывод с использованием Windows Sockets
Перекрывающийся ввод/вывод с использованием Windows Sockets
В главе 14 описывается асинхронный ввод/вывод, позволяющий потоку продолжать свое выполнение в процессе выполнения операции ввода/вывода. В той же главе обсуждается и совместное использование сокетов с асинхронным вводом/выводом Windows.
Большинство задач, связанных с программированием асинхронных операций, можно легко решить, применяя однотипный подход с использованием потоков. Так, в программе serverSK вместо неблокирующегося сокета используется принимающий поток (accept thread). Тем не менее, порты завершения ввода/вывода, связанные с асинхронным вводом/выводом, играют важную роль в обеспечении масштабируемости в случае большого количества клиентов. Эта тема также рассматривается в главе 14.
- Сокеты Windows
- Серверные функции сокета
- Клиентские функции сокета
- Сравнение именованных каналов и сокетов
- Пример: функция приема сообщений в случае сокета
- Пример: клиент на основе сокета
- Пример: усовершенствованный сервер на основе сокетов
- Внутрипроцессные серверы
- Ориентированные на строки сообщения, точкив хода DLL и TLS
- Пример: безопасная многопоточная DLL для обмена сообщениями через сокет
- Пример: альтернативная стратегия создания безопасных библиотек DLL с много поточной поддержкой
- Дейтаграммы
- Сравнение Berkeley Sockets и Windows Sockets
- Перекрывающийся ввод/вывод с использованием Windows Sockets
- Windows Sockets 2
- Резюме
- Упражнения
- Обзор методов асинхронного ввода
- ГЛАВА 14 Асинхронный ввод
- Перекрывающийся ввод
- Асинхронный ввод
- 12.2. Асинхронный ввод
- 1.6 Драйверы и буферы ввода-вывода
- 1.8 Ввод-вывод типичного приложения хранения данных
- Глава 6 BIOS – базовая система ввода-вывода
- 5.2.2.2. Устройства ввода информации в персональный компьютер
- Можно ли входить в систему без ввода имени и пароля?
- 13.3.1. Пакетный ввод
- Создание документов и ввод текста