我们先看一个最古老的多线程实现的服务端
public classSocketThread {public static voidmain(String[] args) throws IOException {
ServerSocket serverSocket= new ServerSocket(9889);while (true) {
Socket client=serverSocket.accept();new Thread(() ->{try{
System.out.println("client port :" +client.getPort());
InputStream inputStream=client.getInputStream();
BufferedReader bufferedReader= new BufferedReader(newInputStreamReader(inputStream));while (true) {
System.out.println(bufferedReader.readLine());
}
}catch(IOException e) {
e.printStackTrace();
}
}).start();
}
}
}
strace指令查看:
我们用【strace】指令检测一下:
-o:输出 到某个路径
-ff: 抓取这个程序所有线程
[root@bogon thread]# strace -ff -o /root/data/thread-group/ooxx java SocketThread //