知识大全 多线程对多个客户端的监听

Posted

篇首语:我会努力奋斗直到亮瞎你们的双眼。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 多线程对多个客户端的监听相关的知识,希望对你有一定的参考价值。

  这是一个比较简单的例子来说明socket编程 服务器端使用了多线程来监听客户端

  服务器端的代码

  package SocketTest;

  import java io *;

  import *;

  import java util *;

  class SocketServer

  public SocketServer()

  Socket ining;

  ServerSocket so;

  try

  so= new ServerSocket( );

  System out println( 等待客户端连接 );

  while(true)

  try

  ining = so accept( );

  System out println( 已连接客户端 );

  GetInfo gi=new GetInfo(ining);//调用线程

   catch (IOException e)

  e printStackTrace();

  

  

  catch (IOException e)

  e printStackTrace();

  

  

  public static void main(String[] args)

  new SocketServer();

  

  private static class GetInfo implements Runnable   //线程类

  private Socket ining;

  private String s=null;

  private BufferedReader b;

  Thread t;

  public GetInfo(Socket ining)

  try

  this ining=ining;

  b=new BufferedReader(new InputStreamReader(ining getInputStream()));

  t=new Thread(this);

  t start();

  catch(IOException e)

  e printStackTrace();

  

  

  public void run()

  try

  while (true)

  s=b readLine();

  System out println(s);

  if(s equals( end ))

  break;

  

  

  catch(IOException e)

  e printStackTrace();

  

  

  

  

  客户端的代码

  package SocketTest;

  import java io *;

  import *;

  import java util *;

  public class SocketClient

  public static void main(String[] args)

  try

  Socket so = new Socket( localhost );

  System out println( 连接服务器 );

  BufferedReader b=new BufferedReader(new InputStreamReader(System in));

  OutputStream outStream = so getOutputStream();

  PrintWriter out = new PrintWriter(outStream);

  String s=null;

  while (true)

  s=b readLine();

  out println( Client: +s);

  out flush();

  if(s equals( end ))

  break;

  

  

  catch (IOException e)

  e printStackTrace();

  

  

cha138/Article/program/Java/gj/201311/27636

相关参考

知识大全 socket 线程 思路 java

  网上参考别人的例子改自己的程序终于搞明白了原来在socket的服务器端设置线程并不是像之前想的那样建立一个连接后就重新开一个端口去监听这样的想法遇到了很多问题首先当我把客户端弄成for循环递增的链

知识大全 java关于多线程的部分操作

  一般服务器端代码每次收到一个线程一个client就会产生  /************************开始监听**************************/  intport=; 

知识大全 Java Socket多线程服务端、客户端

JavaSocket多线程服务端、客户端  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  //主方

知识大全 解析php多线程下载远程多个文件

functionremote($urls$name=$path=$dir=/images/)if(!is_array($urls)orcount($urls)==)returnfalse;dmkdir

知识大全 Eclipse客户端程序中多线程的使用

Eclipse客户端程序中多线程的使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!本文分析了Ec

知识大全 Eclipse客户端程序中多线程的使用[1]

Eclipse客户端程序中多线程的使用[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文

知识大全 Eclipse客户端程序中多线程的使用[5]

Eclipse客户端程序中多线程的使用[5]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  针对

知识大全 Eclipse客户端程序中多线程的使用[4]

Eclipse客户端程序中多线程的使用[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  延时

知识大全 Eclipse客户端程序中多线程的使用[3]

Eclipse客户端程序中多线程的使用[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  这样

知识大全 Eclipse客户端程序中多线程的使用[6]

Eclipse客户端程序中多线程的使用[6]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Jo