利用Java NIO 实现client端,支持自动重连

本文介绍了使用Java NIO构建客户端,并着重讲解如何实现自动重连功能。通过引入连接管理类Manager,实现了在连接断开后的线程同步和重新连接逻辑。
摘要由CSDN通过智能技术生成

Java NIO 实现client端,相比较于Server端的实现,相对简单,如果要支持自动重新连接功能,就需要有线程同步的概念。以下代码实现了自动重新连接的功能,增加了一个具体的连接管理类Manager。

package com.sof.nio;

import java.io.IOException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.sof.bas.Config;
import com.sof.exe.Client;

public class Manager implements Runnable {
	private static Logger logger = LoggerFactory.getLogger(Client.class);
	public boolean connstate = false;
	public String ip = Config.getInstance().getStringValue("ip");
	public int port = Config.getInstance().getIntValue("port");

	public void setestablished() {
		connstate = true;
	}

	public void setdisconnect() {
		connstate = false;
	}

	public boolean getconnstate() {
		return connstate;
	}

	public void run() {
		while (true) {
			Reactor reactor = null;
			try {
		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值