怎样使进程创建线程后继续运行?

时间:2021-09-09 18:31:41
现在我有一个web应用,正常启动jboss后,在进行初始化动作的时候,我打开一个socket监听端口。问题是,主进程调用socket类打开端口后,socket需要一直监听,对主进程无返回,主进程阻塞。请问有什么办法,让主进程创建打开socket端口后,不等socket的是否有返回,而继续运行。并保持socket处于正确监听状态?

谢谢

1 个解决方案

#1


ServerSocket ss = new ServerSocket(10000,10);
while(true){
  Thread th = new mySocket(ss.accept());
  th.start();
}

class mySocket extends Thread{
  protected Socket sock;
  public mySocket(Socket sock){ this.sock = sock }
  
  public void run(){ //run you application }
}

主进程只需要监视是否有传入连接,有accept()的时候,新建一个线程来处理就不会占用主线程资源了

#1


ServerSocket ss = new ServerSocket(10000,10);
while(true){
  Thread th = new mySocket(ss.accept());
  th.start();
}

class mySocket extends Thread{
  protected Socket sock;
  public mySocket(Socket sock){ this.sock = sock }
  
  public void run(){ //run you application }
}

主进程只需要监视是否有传入连接,有accept()的时候,新建一个线程来处理就不会占用主线程资源了