初学者之关于UDP接受数据不到的问题

本文针对初学者在使用UDP协议进行网络通信时遇到的数据接收问题进行探讨,分析可能的原因,包括数据包丢失、端口冲突、缓冲区溢出等,并提供相应的解决策略和调试技巧。
摘要由CSDN通过智能技术生成
问题:一般来说,应该是发送方先发送,然后接收方接收,但是由于发送的速度很快,在发送方关闭之前根本接受不到数据。
解决:先运行接收方,再运行发送方时,就可以快速接收到消息。

public class UDP_service {
    public static void main(String[] args) throws Exception {
        System.out.println("发动方启动中!");
        // 1.使用DatagramSocket 指定端口,创建发送端
        DatagramSocket data = new DatagramSocket(8888);

        // 2.准备数据并要转成字节数组
        String message = "哈哈哈,这是我的数据!";
        byte[] b = message.getBytes();

        // 3.封装成DatagramPacket包裹,需要指定目的地
        DatagramPacket packet = new DatagramPacket(b, 0, b.length, new InetSocketAddress("localhost",6666));

        // 4.发送包裹send
        data.send(packet);

        // 5.释放资源
        data.close();

        System.out.println("发送数据完成!!");
    }
}

 

 

public class UDP_client {
    public static void main(String[] args) throws Exception {
        Syste
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值