android datagramsocket 阻塞,为何在客户端创建多个DatagramSocket对象,会出现阻塞呢...

package com.test;

/*

* 客户端类

*/

import java.io.IOException;

import java.net.DatagramPacket;

import java.net.DatagramSocket;

import java.net.InetAddress;

import java.net.InetSocketAddress;

import java.net.UnknownHostException;

public class UDPclient {

public static void main(String[] args) throws IOException {

/*

* 向服务端发送信息

*/

//定义客户端地址、端口和数据

InetAddress address=InetAddress.getLocalHost();

int port=8800;

byte[] data="user:tom;key:123".getBytes();

//创建DatagramPacket对象,包含数据信息

DatagramPacket packet=new DatagramPacket(data, data.length, address, port);

//创建DatagramSocket对象

DatagramSocket socket=new DatagramSocket();

//发送数据

socket.send(packet);

/*

* 接收服务端信息

*/

//创建另一个DatagramSocket对象

DatagramSocket socket2=new DatagramSocket();

//创建数据报,用于接收信息

byte[] data2=new byte[1024];

DatagramPacket packet2=new DatagramPacket(data2, data2.length);

//接收信息

socket2.receive(packet2);

//输出信息

String reply=new String(data2);

System.out.println("我是客户端,服务器说:"+reply);

//关闭资源

socket.close();

socket2.close();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值