有关多线程和socket问题???
我在一个多线程的类中有如下代码
....
....
public class ProcessRequest implements Runnable{
....
....
private Socket socket;
private ChatServer server;
private DataInputStream inputStream;
private DataOutputStream outStream;
public ProcessRequest(ChatServer server, Socket socket) throws IOException{
this.socket = socket;
InetAddress inet = socket.getInetAddress();
userIP = inet.getHostAddress();
this.server = server;
outStream = new DataOutputStream(socket.getOutputStream());
// inputStream = new DataInputStream(socket.getInputStream());
}
public void run() {
String accept, cmd;
while (true) {
try {
outStream.writeUTF("hello");
}
} catch (Exception e) {
}
break;
}
}
.......
.....
其中// inputStream = new DataInputStream(socket.getInputStream());
为什么注释掉就好使,将注释去掉,就无法将数据送出。难到inputstream 和outputstream不能同时得到?????或者是因为多线程的问题,是否要使用同步???