multithreadserver.java
来自「java课件 java课件 java课件 java课件」· Java 代码 · 共 53 行
JAVA
53 行
import java.io.*;
import java.net.*;
public class MultiThreadServer{
public static void main(String[]args){
try{
ServerSocket serverSocket = new ServerSocket(8000);
int clientNo=1;
while(true){
Socket connectToClient = serverSocket.accept();
System.out.println("Start thread for client "+clientNo);
InetAddress clientInetAddress =
connectToClient.getInetAddress();
System.out.println("Client "+clientNo+" 's host name is "
+clientInetAddress.getHostName());
System.out.println("Client "+clientNo+" 's IP address is "
+clientInetAddress.getHostAddress());
HandleClient thread = new HandleClient(connectToClient);
thread.start();
clientNo++;
}
}catch(IOException ex){
System.err.println(ex);
}
}
}
class HandleClient extends Thread{
private Socket connectToClient;
public HandleClient(Socket socket){
connectToClient = socket;
}
public void run(){
try{
DataInputStream isFromClient = new DataInputStream(
connectToClient.getInputStream());
DataOutputStream osToClient = new DataOutputStream(
connectToClient.getOutputStream());
while(true){
double radius = isFromClient.readDouble();
System.out.println("radius received from client:"+radius);
double area = radius*radius*Math.PI;
osToClient.writeDouble(area);
osToClient.flush();
System.out.println("Area is:"+area);
}
}catch(IOException ex){
System.err.println(ex);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?