zoukankan      html  css  js  c++  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());
        }
        
    }
  • 相关阅读:
    连接多台机子的多个数据库webconfig
    md5
    JavaScript substring() 方法
    Coolite ComboBox 模糊查询
    2010暴强语录
    Response.ContentType 说明
    C#得到磁盘信息
    Coolite Toolkit 1.0版本在线demo
    关于IT人职业道德的反思(转)
    Coolite TextField添加回车事件
  • 原文地址:https://www.cnblogs.com/TomSnail/p/4390425.html
Copyright © 2011-2022 走看看