• 重学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());
        }
        
    }
  • 相关阅读:
    JavaScript与多线程的不解之缘!
    CSS居中的常用方式以及优缺点
    聊一聊Axios与登录机制
    熟悉而陌生API:Promise
    Cassandra数据类型:
    Cassandra 键空间(keyspace),表(table)
    Cassandra 配制 cassandra.yaml
    Linux 环境变量PS1设置
    添加sudo权限
    ssh免密码认证
  • 原文地址:https://www.cnblogs.com/TomSnail/p/4390425.html
Copyright © 2020-2023  润新知