• Thread和ExecutorService(一)


    ExecutorService是Java并发包里面的一个线程池服务
     
    线程池的优点
    • 复用已有的线程,消除任务中创建线程的开销
    • 通过优化线程的数量,提高性能,保证处理器一直处于忙的状态,而不必创建这么多的线程,使程序耗尽资源
     
    首先可以带着以下观点一步一步看,之所以划掉是因为第二条理论不成立...
     
    在18.4.2的练习中,我发现用Thread对象来执行一个线程和线程池管理执行线程的一个有趣的特点:
    • Thread对象是自发销毁的,或由GC或由什么玩意儿,自发的回收线程对象(当线程中的任务执行完成时)。
    • ExecutorService,用线程池来管理线程的话,得注意shutdown掉线程池,因为即使线程池中的线程对象执行完自身任务之后,依然处于running状态,他们已经"身不由己"了;并且,当主线程已经执行完,我们并没有手动关闭线程池的话,ExecutorService依然存在,里面的线程对象,还有线程池对象,甚至还多出一个destroyVM的执行线程都会一直running,这是很可怕的...
     
    用Thread对象来执行线程
     
     
    使用线程池(ExecutorService)来管理线程
     
     
     
     
     
    嗯。。我的生产消费者还没写呢。。同学叫撸了。。尼玛。。我是个败类。。匿了。。
  • 相关阅读:
    象棋人工智能的实现
    cocos2dx实现象棋之运动
    python基础实战之猜年龄游戏
    python流程控制if判断与循环(for、while)
    python基本算术运算符
    python格式化输出的三种方式
    python解压缩
    python集合
    python元组
    python布尔类型
  • 原文地址:https://www.cnblogs.com/H-Col/p/4858792.html
Copyright © 2020-2023  润新知