Socket网络通信之线程池

public static void main(String[] args) throws IOException {
System.out.println("tcp协议服务器端启动..");
ExecutorService newCachedThreadPool = Executors.newCachedThreadPool();//线程池
// 创建服务器端连接
ServerSocket serverSocket = new ServerSocket(8080);
try {
while (true) {
// 接受客户端请求? 阻塞功能
Socket accept = serverSocket.accept();
newCachedThreadPool.execute(new Runnable(){

@Override
public void run() {
try {
InputStream inputStream = accept.getInputStream();
// 将字节流转换成String类型
byte[] bytes = new byte[1024];
int len = inputStream.read(bytes);
String result=new String(bytes,0,len);
System.out.println("服务器端接受客户端内端?:"+result);
OutputStream outputStream = accept.getOutputStream();
outputStream.write("我是曹操哦.getBytes());
} catch (Exception e) {
// TODO: handle exception
}

}
});

}
} catch (Exception e) {
// TODO: handle exception
}finally {
serverSocket.close();
}

}

}

 

 

 

客户端

 

 

 

 

public static void main(String[] args) throws IOException {
System.out.println("socket tcp客户端启成功?....");
//创建socket客户端?
Socket socket=new Socket("127.0.0.1",8080);
OutputStream outputStream = socket.getOutputStream();
outputStream.write("我是曹操".getBytes());
socket.close();
}

 

posted @ 2018-06-27 10:02  南城。  阅读(914)  评论(0编辑  收藏  举报