ESP8266:Прошивки/Arduino/Библиотеки/Библиотека ESP8266WiFi/Класс сервера: различия между версиями
Материал из Онлайн справочника
Myagkij (обсуждение | вклад) |
Нет описания правки |
||
Строка 21: | Строка 21: | ||
Если параметр '''nodelay''' выставить на true, функция отключит [https://ru.wikipedia.org/wiki/Алгоритм_Нейгла алгоритм Нейгла]. | Если параметр '''nodelay''' выставить на true, функция отключит [https://ru.wikipedia.org/wiki/Алгоритм_Нейгла алгоритм Нейгла]. | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
setNoDelay() | setNoDelay() | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 29: | Строка 29: | ||
=== Пример использования: === | === Пример использования: === | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
server.begin(); | server.begin(); | ||
server.setNoDelay(true); | server.setNoDelay(true); |
Версия от 19:55, 23 мая 2023
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Черновик |
Класс сервера в библиотеке ESP8266WiFi[1]
Во-первых, класс сервера в библиотеке ESP8266 использует несколько функций из WiFi-библиотеки Arduino:
- WiFiServer()
- begin()
- available()
- write()
- print()
- println()
Методы и свойства, описанные ниже, разработаны специально для ESP8266. В документации WiFi-библиотеки Arduino их нет.
setNoDelay()
Если параметр nodelay выставить на true, функция отключит алгоритм Нейгла.
setNoDelay()
Этот алгоритм предназначен для уменьшения трафика TCP/IP, состоящего из маленьких пакетов. Он объединяет несколько маленьких исходящих сообщений, а затем отправляем их все разом. Недостаток данного подхода – в задержке отдельных сообщений до того, как будет собран большой пакет.
Пример использования:
server.begin();
server.setNoDelay(true);
Другие функции
- bool hasClient ()
- bool getNoDelay ()
- virtual size_t write (const uint8_t *buf, size_t size)
- uint8_t status ()
- void close ()
- void stop ()
Документация для этих функций пока не готова. Другие примеры использования функций класса сервера ищите в [ссылка этой статье].