本人介绍一下基于java多线程和socket实现简易聊天室的小程序。
本程序实现的目标是,一个服务端和N个客户端可以实现互相聊天,客户端一个线程用于发送消息,另一个线程负责接收消息。服务端用N个线程进行消息发送,用N个线程进行消息接收,而且消息的接收和发送互不影响。
首先实现服务端,建立类TestThreadServer,首先实现服务端收发线程,用两个默认修饰符修饰的类实现:
class ServerReceiveRunnable implements Runnable{
private Socket s=null;
public ServerReceiveRunnable(Socket s){
this.s=s;
}
public void run() {
// TODO Auto-generated method stub
InputStream is=null;
DataInputStream dis=null;
try {
while(true){
is=s.getInputStream();
dis=new DataInputStream(is);
System.out.println("server received:"+dis.readUTF());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class ServerSendRunnable implements Runnable{
private Socket s=null;
public ServerSendRunnable(Socket s){

本文介绍了一种使用Java的socket和多线程技术构建的简易聊天小程序。程序包括一个服务端和多个客户端,每个客户端都有发送和接收消息的独立线程,服务端则使用对应的线程来处理每个客户端的消息。通过这种方式,实现了客户端间的消息交换且互不干扰。

1557

被折叠的 条评论
为什么被折叠?



