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

📄 iothread.java

📁 面向对象的设计思想
💻 JAVA
字号:
import java.io.*;
import java.net.*;

class IoThread extends Thread {
  private Socket skt = null;
  private IoStrategy ioServer;
  private int ioThreadId;
  private static int ioThreadCounter = 1; 
  

  public IoThread(IoStrategy ioServer) {
       this.ioServer = ioServer;
       ioThreadId=ioThreadCounter++;

  }

  public boolean isIdle() {
    return skt == null;
  }

  public synchronized  void setSocket(Socket s) {
    if (skt == null) {
     //** 3 Initialize skt
    skt=s;

    //**  4 Make the thread stop waiting
    notify();
    }
        // else -- log error
  }

  public synchronized void run() {
    while (true) {
      try {
              wait();

            ioServer.ioService(skt);

        skt = null;
      } catch(Exception e) {
        e.printStackTrace();
      }
    }
  } 
}

⌨️ 快捷键说明

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