多线程服务器

编程入门 行业动态 更新时间:2024-10-27 17:20:16

<a href=https://www.elefans.com/category/jswz/34/1767532.html style=多线程服务器"/>

多线程服务器



import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.Socket;public class mythread extends Thread{/** 服务器多线程处理*/Socket sock=null;public mythread(Socket sock) {this.sock = sock;}	//相应客户端请求public void run(){InputStream is = null;InputStreamReader isr = null;BufferedReader br = null;//服务端向客户端发数据OutputStream os = null;PrintWriter pw = null;try {is = sock.getInputStream();isr = new InputStreamReader(is);br = new BufferedReader(isr);String s = br.readLine();while(s!=null){System.out.println("客户端说"+s);s=br.readLine();}sock.shutdownInput();//可以不写os = sock.getOutputStream();pw = new PrintWriter(os);pw.write("我是赵瑾的服务端");os.flush();//关闭} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}//sock.shutdownOutput();finally{try {if(pw!=null)pw.close();if(os!=null)os.close();if(br!=null)br.close();if(isr!=null)isr.close();if(is!=null)is.close();//ss.close();if(sock!=null)sock.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
}

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.ServerSocket;
import java.Socket;import org.junit.Test;
public class server {@Testpublic void demo1() throws IOException{//创建一个端口号为8888的服务端socketServerSocket ss = new ServerSocket(8887);//调用accept方法等待客户端连接System.out.println("服务器准备启动");int count=0;while(true){Socket sock = ss.accept();mythread mt=new mythread(sock);//创建线程mt.run();//count++;System.out.println(count);}}
}

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.Socket;
import java.UnknownHostException;import org.junit.Test;public class client {@Testpublic void demo1() throws UnknownHostException, IOException{//创建客户端socket,并指定端口号和地址Socket client = new Socket("localhost", 8887);//获得输出流向服务器发送数据OutputStream os = client.getOutputStream();//字节输出流PrintWriter pw=new PrintWriter(os);pw.write("我是赵瑾的客户端");pw.flush();//刷新缓存client.shutdownOutput();//可以不写//客户端接收服务端的数据InputStream is = client.getInputStream();InputStreamReader isr=new InputStreamReader(is);BufferedReader br=new BufferedReader(isr);String s = br.readLine();while(s!=null){System.out.println("服务端说"+s);s=br.readLine();}//关闭资源//client.shutdownInput();br.close();isr.close();is.close();pw.close();os.close();client.close();}
}


更多推荐

多线程服务器

本文发布于:2024-02-17 14:14:41,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1694287.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:多线程   服务器

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!