?? iothread.java
字號:
package trader.nw;
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) {
skt = s;
notify();
}
// else -- log error
}
public synchronized void run() {
while (true) {
try {
System.out.println("IoThread " + ioThreadId +
" entering into wait state");
wait();
System.out.println("IoThread " + ioThreadId +
" left wait state to service client");
ioServer.ioService(skt);
skt = null;
} catch(Exception e) {
e.printStackTrace();
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -