java socket通信 总结


1.

 socket 通信原理:

  基于TCP的socket通信。

2.多线程的优先级。

while(true){
			 socket = serverSocket.accept();
			 //创建一个新线程
			 ServerThread serverThread=new ServerThread(socket);
                      //未设置优先级,可能导致运行时速度非常慢,可降低优先级。
			 serverThread.setPriority(4);//设置线程的优先级,范围(1,10);默认为5
			 serverThread.start();//启动线程.
			 
			 count++;//统计客户端数量
			 System.out.println("客户端数量:"+count);
			 
			 InetAddress address=socket.getInetAddress();
			 System.out.println("当前客户端IP:"+address.getHostAddress());
		 } 

3.是否关闭输出输入流

  对于同一个socket,如果关闭了输出流。则与该输出流关联的socket也会被关闭,所以一般不用关闭流,直接关闭socket。

4.使用TCP传输对象。

	//创建客户端Socket,指定服务器地址和端口号
		Socket sk=new Socket("localhost", 8888);
		//获取输出流,向服务器发送信息
		OutputStream os=sk.getOutputStream();//字节输出流
		//使用对象序列化流
		ObjectOutputStream oos=new ObjectOutputStream(os);
		User user=new User("admin",123);
		oos.writeObject(user);//序列化
		sk.shutdownOutput();//关闭输出流


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章