0
我的服务器套接字有一些问题。我创建一个DatagramSocket在服务器和客户端之间进行聊天。Java套接字服务器阻塞
public static void main (String[] args) throws IOException {
byte[] send = new byte[1024];
byte[] receive = new byte[1024];
BufferedReader entree;
DatagramSocket serverSocket = null;
InetAddress ip;
InetAddress ipDest;
int port;
try {
serverSocket = new DatagramSocket(8888);
} catch (SocketException e) {
e.printStackTrace();
}
while (true) {
DatagramPacket recu = new DatagramPacket(receive, receive.length);
serverSocket.receive(recu);
String sentence = new String(recu.getData());
ipDest = recu.getAddress();
port = recu.getPort();
System.out.println("Reçu:"+sentence);
entree = new BufferedReader(new InputStreamReader(System.in));
String chaine = entree.readLine();
send = chaine.getBytes();
DatagramPacket dp = new DatagramPacket(send, send.length, ipDest, port);
serverSocket.send(dp);
send = new byte[1024];
receive = new byte[1024];
}
但是我用new BufferedReader(new InputStreamReader(System.in))
得到下一个东西送的,它阻止。所以,我无法接收客户提供的信息并打印出来。
我该如何安排?
Merci,eo
如果您希望能够同时发送和接收数据,您必须将其置于不同的线程中。 – Reinard 2012-03-26 13:41:11