Unity UDP Socket的双向通信

本文介绍如何在Unity中使用UDP Socket实现双向通信。服务器通过绑定端口监听,而客户端指定目标端口进行通信,实现信息的交互与处理。
摘要由CSDN通过智能技术生成

基于UDP的通信是面向无连接的通信,所以实际上服务器和客户端是对等的,不同之处在于服务器绑定了一个监听端口,而客户端每次都是自动分配的连接端口,其实也可以做成两边绑定端口或者都不绑定端口的模式

以下是UDP双向模式

 

服务器端:

新建Socket

绑定端口

连接通信

using UnityEngine;
using System.Collections;
//引入库
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;

public class UdpServer:MonoBehaviour
{
    //以下默认都是私有的成员
    Socket socket; //目标socket
    EndPoint clientEnd; //客户端
    IPEndPoint ipEnd; //侦听端口
    string recvStr; //接收的字符串
    string sendStr; //发送的字符串
    byte[] recvData=new byte[1024]; //接收的数据,必须为字节
    byte[] sendData=new byte[1024]; //发送的数据,必须为字节
    int recvLen; //接收的数据长度
    Thread connectThread; //连接线程


    //初始化
    void InitSocket()
    {
        //定义侦听端口,侦听任何IP
        ipEnd=new IPEndPoint(IPAddress.Any,8001);
        //定义套接字类型,在主线程中定义
        socket=new Socket(AddressFamily.InterNetwork,SocketType.Dgram,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值