В FreeBSD для получения параметров сокета TCP (в tcp_ctloutput() в tcp_usrreq.c), необходимо выполнить блокировку с INP_WLOCK (inp), как это делают параметры сокета. Поскольку получение опции TCP-сокета только считывает некоторые данные из блока управления tcp и не изменяет данные, мне любопытно, почему мы не используем блокировку чтения с INP_RLOCK (inp) для лучшей производительности.Почему FreeBSD получает параметр сокета TCP, необходимо блокировать блокировку записи?
2
A
ответ
1
Если вы не наложили на него блокировку записи, параметры, возможно, изменились при чтении, что приведет к фиктивным результатам.
Смежные вопросы
- 1. Как сделать блокировку tcp-сокета с Qt?
- 2. namenode port получает блокировку
- 3. is mongo.update() получает мгновенную блокировку записи?
- 4. Как блокировать блокировку дочернего элемента?
- 5. Ошибка сокета TCP 10061
- 6. Определить состояние TCP-сокета
- 7. Синхронизированный метод может не блокировать блокировку
- 8. Отключить блокировку карты и блокировать захват значения
- 9. python fcntl не получает блокировку
- 10. сокета TCP асинхронной связи
- 11. Длина жизни сокета TCP
- 12. Потребление данных сокета TCP
- 13. Время передачи TCP-сокета
- 14. Чтение из сокета TCP
- 15. C - Связь сокета (TCP)
- 16. TCP-сканирование: неожиданные исключения сокета
- 17. Пропускная способность Unix TCP-сокета
- 18. Чтение из сокета TCP C
- 19. Скорость отправки сокета TCP C++
- 20. Блокировка чтения из входного сокета TCP
- 21. Данные сокета TCP, получаемые скремблированными
- 22. Tcp клиент не получает данные
- 23. Копирование lib32 необходимо на FreeBSD amd64
- 24. Необходимо подключить FreeBSD к платформе MIPS®
- 25. Проблема со связью сокета TCP
- 26. Создание сокета TCP в C
- 27. Конфигурация тайм-аута сокета TCP
- 28. Ошибка программирования сокета TCP-соединения
- 29. Управление несколько сокета TCP nodejs
- 30. Создание сокета TCP в AngularJS