// 读请求,等待可执行条件,然后回复
MySocket socket;
public Watcher(int role, Turn turn, MySocket socket) {
this.role = role;
this.turn = turn;
this.socket = socket;
}
private String toRole(int r) {
return r == 0 ? “黑方” : “白方”;
}
@Override
public void run() {
// 如果到达流的末尾,则返回-1 。
while (true) {
// 受到客户端请求下棋的请求
try {
if (socket.receive() == -1) {
System.out.println(“通信结束”);
break;
}
} catch (IOException e) {
e.printStackTrace();
}
// System.out.println(“受到”+toRole(role)+“请求; 当前是”+toRole(turn.role)+“阶段”);
try {
synchronized (turn){
// 1 表示许可; 0 表示拒绝
if (role == turn.role) {
System.out.println("服务器 ———————— "+