zoukankan      html  css  js  c++  java
  • 020 线程的综合考虑

    一 . 概述

      在前面我们介绍了线程的同步和通信的方式,其根本就是在线程并发的时候更好的保证线程的安全性,可见性,有序性.

        总的来说,就是将线程的不可控制的特性尽量降低,在正确和性能之间寻找平衡点.

          控制就意味性能的降低,但是我们需要控制来保证安全性.

      总的来说,现在就是我们寻找线程的平衡点的一个时机.


    二 .我们的期望

      对于线程来说.我们希望获取的是性能高效且结果正确的线程运行.

       但是这个是不可能的.我们总需要牺牲一些来完成.但是这并不是说我们无能为力,我们可以做出一下的几点改进.

        [1]减小锁的粒度,于是JUC中出现了高级锁.

        [2]无锁化,使用CAS来完成.

        [3]并发方案的整体改进,线程辅助类的提出.

        [4]减少线程创建的代价,线程池框架的出现.

        [5]安全集合减少同步代价

        等等,不一而足,上面的这些东西都在JUC之中出现了.另外还有Callable,Future异步等概念的出现,Fork/Join并行的概念的出现.

          通过JUC,我们可以简化并发程序编写的难度,但是我们需要知道的是,并发总是需要小心的对待.

  • 相关阅读:
    BZOJ 2212/BZOJ 3702
    BZOJ 4761 Cow Navigation
    BZOJ 3209 花神的数论题
    BZOJ 4760 Hoof, Paper, Scissors
    BZOJ 3620 似乎在梦中见过的样子
    BZOJ 3940 Censoring
    BZOJ 3942 Censoring
    BZOJ 3571 画框
    BZOJ 1937 最小生成树
    BZOJ 1058 报表统计
  • 原文地址:https://www.cnblogs.com/trekxu/p/9005077.html
Copyright © 2011-2022 走看看