package ch3;
import java.io.IOException;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.DatagramChannel;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.charset.Charset;
import java.util.Iterator;
/**
* UDP 传送数据服务器
* @author Administrator
*
*/
public class UDPServerSocket {
public static void main(String[] args) throws Exception {
//打开UDP数据包通道
DatagramChannel dgc=DatagramChannel.open();
//设置非阻塞模式
dgc.configureBlocking(false);
//打开选择器
Selector selector = Selector.open();
//绑定服务器端口
dgc.socket().bind(new InetSocketAddress(10001));
//注册选择器
dgc.register(selector, SelectionKey.OP_READ);
System.out.println("UDP 服务器开启");
ByteBuffer bb=ByteBuffer.allocateDirect(8);
while(true){
selector.select();
Iterator<SelectionKey> keys=selector.selec
Java Nio UDP 消息发送
最新推荐文章于 2024-07-17 15:49:27 发布
本文详细探讨了如何使用Java NIO进行UDP通信,涵盖了创建DatagramSocket、编写Buffer、发送与接收数据包的步骤,以及在实际应用中可能遇到的问题和解决方案。
摘要由CSDN通过智能技术生成