你的位置:首页 > Java教程

[Java教程]重学JAVA基础(四):线程的创建与执行


1.继承Thread

  

public class TestThread extends Thread{  public void run(){    System.out.println(Thread.currentThread().getName());  }    public static void main(String[] args) {    Thread t = new TestThread();    t.start();  }}

 

2.实现Runnable

public class TestRunnable implements Runnable{  @Override  public void run() {    System.out.println(Thread.currentThread().getName());      }  public static void main(String[] args) {    Thread t = new Thread(new TestRunnable());    t.start();  }}

 

3.线程池

public class TestThreadPool {    public static ExecutorService singlePool = Executors.newSingleThreadExecutor();    private static ExecutorService fixedPool = Executors.newFixedThreadPool(2);    private static ExecutorService cachedPool = Executors.newCachedThreadPool();    private static ThreadPoolExecutor tpe = new ThreadPoolExecutor(5, 10, 5000, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>(), new DefaultThreadFactory(),new ThreadPoolExecutor.AbortPolicy());  private static class DefaultThreadFactory implements ThreadFactory{    @Override    public Thread newThread(Runnable r) {      Thread t = new Thread(r);      return t;    }  }    public static void main(String[] args) {    singlePool.execute(new TestThreadP());    fixedPool.execute(new TestThreadP());    cachedPool.execute(new TestThreadP());    tpe.execute(new TestThreadP());  }    }class TestThreadP implements Runnable{  @Override  public void run() {    System.out.println(Thread.currentThread().getName());  }  }