⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 socketmanage.java

📁 j2me的联网21点程序
💻 JAVA
字号:
		package com.dfun.blackjackServer;
import java.util.Hashtable;
import java.net.*;;

/**************************************************
 * @author Beetle
 * 类功能介绍:连接管理器包含二个连接列表,连接管理器主要用于维
 * 护这个列表,进行添加、删除、续连等操作,系统启动时便进行监听
 * 操作有请求到达时便生成新的连接
 **************************************************/

public class SocketManage extends Thread{
	public Hashtable connOneList;
	public Hashtable connTwoList;

	private Control ctrl;
	private ServerSocket echoServer;
	public SocketManage(Control ctrl) {
		this.ctrl=ctrl;
		connOneList=new Hashtable();
		connTwoList=new Hashtable();
		this.start();                                     //启动监听
	}
	/*****************************************************
	 * 功能介绍:在联接列表1添加联接
	 * 输入参数:key,连接
	 * 输出参数:无
	 ****************************************************/
	public void addConnOne(String userId,SocketConn conn) {
		connOneList.put(userId,conn);
	}

	/*****************************************************
	 * 功能介绍:删除连接
	 * 输入参数:用户id
	 * 输出参数:无
	 ****************************************************/
	public boolean removeConn(String userId) {
		//删除连接前将是否监听置为否以防止另外一个连接断开时重新执行offline程序
		try{
			SocketConn conn = (SocketConn) connOneList.get(userId);
			if (conn.isListener==false){
				return false;
			}

			conn.isListener = false;
			connOneList.remove(userId);
			conn = (SocketConn) connTwoList.get(userId);
			if (conn.isListener==false){
				return false;
			}
			conn.isListener = false;
			connTwoList.remove(userId);
			return true;
		}catch(Exception e){
			System.out.println("移除连接"+e.getMessage());
			return false;
		}
	}
	/*****************************************************
	 * 功能介绍:在联接列表2添加联接
	 * 输入参数:key,连接
	 * 输出参数:无
	 ****************************************************/
	public void addConnTwo(String userId,SocketConn conn) {
		connTwoList.put(userId,conn);
	}
	public void run() {
		try {
			echoServer = new ServerSocket(3333); //creat a server socket at port
		}
		catch (Exception e) {

			System.exit( -1);
		}
		Socket echoClient = null;
		try {
			while (true) {
				echoClient = echoServer.accept(); //accept a connection
				new SocketConn(ctrl,this,echoClient);
			}
		}
		catch (Exception e) {

			System.exit( -1);
		}
	}


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -