package concurrentTest;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
/**
* UDP/IP阻塞模式
* */
public class UDPBIO {
/**
* 服务器端和客户端类似
* @param ipStr IP地址
* @param portNum 端口号
* */
public void udpListen(String ipStr, int portNum)
{
try {
//若希望是全双工模式,则启动一个监听端口,承担服务器的职责
//若不能绑定到指定端口,则抛出SocketException
DatagramSocket serverSocket = new DatagramSocket(portNum);
InetAddress server = InetAddress.getByName(ipStr);
byte[] buffer = new byte[65507];
DatagramPacket receivePacket = new DatagramPacket(buffer,buffer.length);
DatagramSocket socket = new DatagramSocket();
DatagramPacket packet = new DatagramPacket(buffer,buffer.length,server,portNum);
//阻塞发送packet到指定的服务器和端口
//网络IO异常,抛出IOExceprion
//连不上IP和端口,抛出PortUnreachableException
socke
UDP/IP 阻塞模式与非阻塞模式
最新推荐文章于 2022-09-12 22:16:29 发布