java socket编程,多任务处理

上一篇 / 下一篇  2012-04-10 22:47:43 / 个人分类:java

 

一般TCP/IP服务端需要接受多个客户端得连接,服务器端就需要实现多线程处理

有两种方式,thread-per-client,即为每一个客户端连接创建一个新的线程

thread pool,线程池,即将客户端连接分配给一组事先创建好的线程。

 

今天先学习下,线程的入门。下面是代码示例。

import java.util.concurrent.TimeUnit;

public class ThreadExample implements Runnable {
 private String greeting;
 
 public ThreadExample(String greeting){
  this.greeting = greeting;
 }
 
 public void run() {
  while(true) {
   System.out.println(Thread.currentThread().getName() + ": " + greeting);
   try {
    TimeUnit.MILLISECONDS.sleep(((long) Math.random() * 100));
   }catch(InterruptedException e) {
   }
  }
 }
 
 public static void main(String[] args) {
  new Thread(new ThreadExample("Hello")).start();
  new Thread(new ThreadExample("Aloha")).start();
  new Thread(new ThreadExample("Ciao")).start();
 }
}

在程序运行的时候,三条问候语将交错地打印到控制台。


TAG:

 

评分:0

我来说两句

Open Toolbar