Karteikarten
3. Сокеты Беркли. Мультиплексирование.
Karten in diesem Stapel (7)
- 1Виды сокетовIPv4 (TCP, UDP), IPv6, UNIX-сокеты
- 2Блокирующие и неблокирующие сокетыБлокирующий сокет не вернёт управление, пока не прочитает ровно столько байт, сколько было указано при вызове функции чтения.
Неблокирующий сокет прочитает столько, сколько может на данный момент, и вернёт число прочитанных байт. - 3Мультиплексирование. Способы мультиплексированияМультиплексирование - обработка срезу многих сокетов.
Способы: select, poll, epoll, kqueue. - 4Мультиплексирование через select, достоинства и недостаткиДостоинства: гоняем в ядро и обратно всего 1024 бита (128 байт).
Недостатки: не может обрабатывать больше 1024 соединений одновременно (и то если все дескрипторы от 0 до 1023). - 5Мультиплексирование через poll, достоинства и недостаткиДостоинства: количество обрабатываемых сокетов не ограничено.
Недостатки: гоняем много данных в ядро и обратно. - 6Мультиплексирование через epoll, достоинства и недостаткиДостоинства: в ядро и обратно гоняем только те сокеты, которые нуждаются в обработке.
Недостатки: чуть сложнее в эксплуатации, чем select и poll. - 7Мультиплексирование через KQueue, достоинства и недостатки.Достоинства: одним системным вызовом можем добавлять и удалять сокеты, а также получать те, что нуждаются в обработке.
Недостатки: доступен только во FreeBSD.
Informationen
- Beschreibung
- Карточки по третьей лекции курса "Многопоточное программирование на C/C++" на stepic.org
- Erstellt von
- Sergei Fomin
- Aufrufe
- 130
- Tags
- Bewertung