РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1153 of 1245 menu

Вариант Read

Вариант Read класса Shutdown представляет собой один из способов управления сетевым соединением. Он используется в методе shutdown для того, чтобы закрыть поток чтения данных, при этом оставляя возможность записи. Параметров вариант не принимает, так как является простым перечислением.

Синтаксис

Shutdown::Read

Пример

Давайте создадим TCP-соединение и вызовем метод shutdown с вариантом Read, чтобы запретить дальнейшее чтение из сокета:

use std::net::{TcpStream, Shutdown}; fn main() { let mut stream = TcpStream::connect("127.0.0.1:8080").unwrap(); let res = stream.shutdown(Shutdown::Read); println!("{:?}", res); }

Результат выполнения кода (при успешном соединении):

Ok(())

Пример

Если попытаться прочитать данные после вызова shutdown(Shutdown::Read), операция чтения вернёт ошибку или ноль байт. Рассмотрим пример с обработкой ошибки:

use std::net::{TcpStream, Shutdown}; use std::io::Read; fn main() { let mut stream = TcpStream::connect("127.0.0.1:8080").unwrap(); stream.shutdown(Shutdown::Read).unwrap(); let mut buf = [0; 10]; let res = stream.read(&mut buf); println!("{:?}", res); }

Результат выполнения кода (при успешном соединении):

Ok(0)

Смотрите также

  • класс Shutdown,
    который управляет закрытием сетевого соединения
  • вариант Write,
    который закрывает только поток записи
  • вариант Both,
    который закрывает и чтение, и запись
  • тип ToSocketAddrs,
    который используется для разрешения адресов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить