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

Метод set_broadcast

Метод set_broadcast включает или выключает режим широковещательной рассылки (broadcast) для UDP-сокета. Параметром метод принимает логическое значение: true для включения широковещательной рассылки и false для её выключения. Метод возвращает Result с типом в случае успеха или ошибку io::Error, если установить режим не удалось. По умолчанию широковещательная рассылка выключена.

Синтаксис

socket.set_broadcast(broadcast)

Пример

Давайте создадим UDP-сокет и включим для него режим широковещательной рассылки:

use std::net::UdpSocket; fn main() { let socket = UdpSocket::bind("0.0.0.0:0").unwrap(); socket.set_broadcast(true).unwrap(); println!("broadcast enabled"); }

Результат выполнения кода:

"broadcast enabled"

Пример

Давайте проверим, что после включения режима широковещательной рассылки сокет может отправлять данные на широковещательный адрес:

use std::net::UdpSocket; fn main() { let socket = UdpSocket::bind("0.0.0.0:0").unwrap(); socket.set_broadcast(true).unwrap(); let res = socket.send_to(b"hello", "255.255.255.255:8080"); println!("{:?}", res); }

Результат выполнения кода:

Ok(5)

Пример

Давайте выключим режим широковещательной рассылки, передав в метод false:

use std::net::UdpSocket; fn main() { let socket = UdpSocket::bind("0.0.0.0:0").unwrap(); socket.set_broadcast(true).unwrap(); socket.set_broadcast(false).unwrap(); println!("broadcast disabled"); }

Результат выполнения кода:

"broadcast disabled"

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

  • класс UdpSocket,
    который представляет UDP-сокет
  • метод bind,
    который привязывает сокет к адресу
  • метод send_to,
    который отправляет данные по указанному адресу
  • метод set_ttl,
    который устанавливает время жизни пакетов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить