GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Karteikarten

3. Сокеты Беркли. Мультиплексирование.

Sergei Fomin Многопоточное программирование на C/C++ Certificate Englisch 7 Karten

Karten in diesem Stapel (7)

  1. 1Виды сокетовIPv4 (TCP, UDP), IPv6, UNIX-сокеты
  2. 2Блокирующие и неблокирующие сокетыБлокирующий сокет не вернёт управление, пока не прочитает ровно столько байт, сколько было указано при вызове функции чтения.
    Неблокирующий сокет прочитает столько, сколько может на данный момент, и вернёт число прочитанных байт.
  3. 3Мультиплексирование. Способы мультиплексированияМультиплексирование - обработка срезу многих сокетов.
    Способы: select, poll, epoll, kqueue.
  4. 4Мультиплексирование через select, достоинства и недостаткиДостоинства: гоняем в ядро и обратно всего 1024 бита (128 байт).
    Недостатки: не может обрабатывать больше 1024 соединений одновременно (и то если все дескрипторы от 0 до 1023).
  5. 5Мультиплексирование через poll, достоинства и недостаткиДостоинства: количество обрабатываемых сокетов не ограничено.
    Недостатки: гоняем много данных в ядро и обратно.
  6. 6Мультиплексирование через epoll, достоинства и недостаткиДостоинства: в ядро и обратно гоняем только те сокеты, которые нуждаются в обработке.
    Недостатки: чуть сложнее в эксплуатации, чем select и poll.
  7. 7Мультиплексирование через KQueue, достоинства и недостатки.Достоинства: одним системным вызовом можем добавлять и удалять сокеты, а также получать те, что нуждаются в обработке.
    Недостатки: доступен только во FreeBSD.

Informationen

Beschreibung
Карточки по третьей лекции курса "Многопоточное программирование на C/C++" на stepic.org
Erstellt von
Sergei Fomin
Aufrufe
130
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck