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

📄 socketthread.java

📁 我的课程设计的源代码
💻 JAVA
字号:
/**
 * @(#)SocketThread.java
 *
 *
 * @author 
 * @version 1.00 2008/4/22
 */


//package fivechess;
import java.net.*;
import java.io.*;
import javax.swing.*;
public class SocketThread extends Thread{
	private ChessFrame cf;
	private MainPanel mp;
	private boolean isRun=true;
	private byte message[]=new byte[2];
	private InputStream socketin;
	private OutputStream socketout;
	private Socket socket;
	private boolean isDistDisconn=false;
	
	public SocketThread (ChessFrame cframe,MainPanel mpanel){
		this.cf=cframe;
		this.mp=mpanel;
		this.socketin=cframe.getin();
		this.socketout=cframe.getout();
		this.socket=cframe.getsocket();
		
	}
	public void run(){
		while(isRun){
			try{
			
				if((socketin.read(message))==2)
				{
					if(message[0]==-1){
						StopRun();
						isDistDisconn=true;
					}
					if(message[1]==0){
				         System.out.println("收到开局信息>>>>>>>>>>");
						if(ChessFrame.isserver)
							 ChessFrame.istoken=true;
					    else 
					    	 ChessFrame.istoken=false;
					    JOptionPane.showMessageDialog(cf,"对方开始新局! ","新局",JOptionPane.INFORMATION_MESSAGE);
					    cf.restart();
				       }
				}
				else 
					mp.messageUpdate(message[0],message[1]);
		}catch(IOException e)
		{ 
			System.out.println(e);
		} 
  }
  try{
  	 socketin.close();
  	 socketout.close();
  	 socket.close();
  	 ChessFrame.isnet=false;
  	 if(isDistDisconn){
  	 	
  	 	JOptionPane.showMessageDialog(cf,"连接中断! ","网络中断",JOptionPane.ERROR_MESSAGE);
  	 	cf.setEnableMenuItems();
  	 }
  }catch(IOException e){
  	System.out.println(e);
  }
}
   public boolean getStatus(){
	  return isRun;
	
  }
  public void StopRun(){
	isRun=false;
  }
}







  

⌨️ 快捷键说明

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