java

java

  • java并发工具类
    2020年10月29日

    java并发工具类

    CountDownLatch闭锁:在多线程执行过程中设置几个门闩,当所有的门闩被打开时,被挡在门外的线程才能继续执行CyclicBarrier栅栏:可以让一组线程到达一个屏障的时候被阻塞,直到最后一个线程到达屏障,屏障才会打开,所有的线程继续往下执行CyclicBarrier和CountDownLa

    查看全文
  • java并发容器
    2020年10月28日

    java并发容器

    CopyOnWriteArrayList写时复制容器,向容器添加一个元素时,先将当前的容器进行复制,生成一个新的容器,然后在向新的容器添加元素,之后再将原容器的引用指向新的容器,这保证了多线程下的并发性和一致性,但是当数据量比较大的时候,就需要考虑效率问题缺点数据一致性问题:CopyOnWrite容

    查看全文
  • java锁
    2020年10月18日

    java锁

    LockLock 接口最常见的实现类是ReentrantLock,通常情况下,Lock 只允许一个线程来访问这个共享资源,不过有的时候,一些特殊的实现也可允许并发访问,比如 ReadWriteLock 里面的 ReadLockLock 的加解锁和 synchronized 有同样的内存语义,也就是说

    查看全文
  • java线程池
    2020年10月10日

    java线程池

    为什么要使用线程池反复创建线程开销大过多的线程会占用太多内存线程池的好处加快响应速度合理利用 CPU 和内存统一管理线程池适合应用的场合服务器接受大量请求时,使用线程池技术是非常合适的,它可以大大减少线程的创建和销毁次数,提高服务器的工作效率,实际在开发中,如果需要创建 5 个以上的线程,那么就可以

    查看全文
  • ThreadLocal学习
    2020年06月05日

    ThreadLocal学习

    ThreadLocal 将一个变量隔离在某一个线程上,即该变量只在某个线程本身可见,其他线程无法访问,可以实现线程的安全性,而且可以避免线程同步带来的性能损失如图所示,每个 Thread对象中都持有一个 ThreadLocalMap 成员变量,每个 ThreadLocalMap 有一个键值对 Ent

    查看全文
  • LocalDateTime格式化
    2020年06月02日

    LocalDateTime格式化

    在 SpringBoot 中使用 spring.jackson.date-format 只会对 Date 类型进行格式化,而使用 @JsonFormat 只能针对单个属性进行格式化,比较麻烦,所以需要一个全局的格式化。对输出到页面的数据进行格式化@Configurationpublic class

    查看全文