优化 服务端 客户端代码
This commit is contained in:
		@@ -18,26 +18,29 @@ public class RIPService {
 | 
			
		||||
 | 
			
		||||
    public static void main(String[] args) throws Exception {
 | 
			
		||||
        // 启动服务器
 | 
			
		||||
//        RIPServer server = new RIPServer();
 | 
			
		||||
//        new Thread(() -> {
 | 
			
		||||
//            try {
 | 
			
		||||
//                server.start();
 | 
			
		||||
//            } catch (InterruptedException e) {
 | 
			
		||||
//                e.printStackTrace();
 | 
			
		||||
//            }
 | 
			
		||||
//        }).start();
 | 
			
		||||
        if (Config.startServer) {
 | 
			
		||||
            RIPServer server = new RIPServer();
 | 
			
		||||
            new Thread(() -> {
 | 
			
		||||
                try {
 | 
			
		||||
                    server.start();
 | 
			
		||||
                } catch (InterruptedException e) {
 | 
			
		||||
                    e.printStackTrace();
 | 
			
		||||
                }
 | 
			
		||||
            }).start();
 | 
			
		||||
            System.out.println("服务端已经启动");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 启动客户端
 | 
			
		||||
        RIPClient client = new RIPClient();
 | 
			
		||||
 | 
			
		||||
        // 定期发送路由更新
 | 
			
		||||
        ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
 | 
			
		||||
        scheduler.scheduleAtFixedRate(() -> {
 | 
			
		||||
            System.out.println("发送 开始");
 | 
			
		||||
            RIPPacket packet = createRipResponsePacket(Config.RIP_VERSION);
 | 
			
		||||
            client.sendRipPacket(packet);
 | 
			
		||||
            System.out.println("发送 结束");
 | 
			
		||||
        }, 0, 10, TimeUnit.SECONDS);
 | 
			
		||||
        if (Config.startClient) {
 | 
			
		||||
            // 启动客户端
 | 
			
		||||
            RIPClient client = new RIPClient();
 | 
			
		||||
            // 定期发送路由更新
 | 
			
		||||
            ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
 | 
			
		||||
            scheduler.scheduleAtFixedRate(() -> {
 | 
			
		||||
                RIPPacket packet = createRipResponsePacket(Config.RIP_VERSION);
 | 
			
		||||
                client.sendRipPacket(packet);
 | 
			
		||||
            }, 0, 10, TimeUnit.SECONDS);
 | 
			
		||||
            System.out.println("客户端已经启动");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 主线程等待
 | 
			
		||||
        Thread.currentThread().join();
 | 
			
		||||
 
 | 
			
		||||
@@ -2,5 +2,7 @@ package cn.x47.config;
 | 
			
		||||
 | 
			
		||||
public class Config {
 | 
			
		||||
    // 设置协议版本,1 表示 RIP v1,2 表示 RIP v2
 | 
			
		||||
    public static final byte RIP_VERSION = 1;
 | 
			
		||||
    public static final byte RIP_VERSION = 2;
 | 
			
		||||
    public static final boolean startServer = true;
 | 
			
		||||
    public static final boolean startClient = true;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user