Клас socket (ts)

Socket Клас надає широкий набір методів і властивостей для мережевих взаємодій. Socket Клас дозволяє виконувати синхронний і асинхронний передачу даних з використанням будь-якого з комунікаційних протоколів, перерахованих в ProtocolType перерахування.

Socket Клас відповідає шаблоном іменування .NET Framework для асинхронних методів. Наприклад, синхронний Receive метод відповідає асинхронним BeginReceive і EndReceive методи.

Якщо додатку потрібно тільки один потік під час виконання, використовуйте наступні методи, які призначені для роботи в синхронному режимі.

Якщо використовується протокол без встановлення з'єднання, наприклад UDP, необов'язково для прослуховування з'єднань взагалі. Виклик ReceiveFrom метод для прийому вхідних датаграм. Використовуйте SendTo метод відправки датаграм на віддалений вузол.

Щоб виконати передачі з використанням окремих потоків під час виконання, використовуйте наступні методи, які призначені для роботи в асинхронному режимі.

Якщо використовується протокол із установленням з'єднання, як TCP, використовуйте Socket. BeginConnect. і EndConnect методів для з'єднання з прослуховуючих вузлом. Використовуйте BeginSend і EndSend або BeginReceive і EndReceive методи для асинхронного обміну даними. Вхідні запити на підключення можуть бути оброблені за допомогою BeginAccept і EndAccept.

Якщо використовується протокол без встановлення з'єднання, наприклад UDP, можна використовувати BeginSendTo і EndSendTo для відправки датаграм, а BeginReceiveFrom іEndReceiveFrom для прийому датаграмм.

Якщо виконати кілька асинхронних операцій на сокеті, вони не обов'язково повинні завершуватися в тому порядку, в якому вони запущені.

Після завершення надсилання та отримання даних, використовуйте Shutdown метод для відключення Socket. Після виклику методу Shutdown. викличте Close метод, щоб звільнити всі ресурси, пов'язані з Socket.

Socket Дозволяє налаштувати вашої Socket за допомогою SetSocketOption метод. Отримати ці параметри за допомогою GetSocketOption метод.

Якщо ви пишете щодо просте додаток і не потрібна максимальна продуктивність, розгляньте можливість використання TcpClient. TcpListener. і UdpClient. Ці класи надають простий і зручний інтерфейс для Socket зв'язку.

Схожі статті