欢迎大家关注我的公众号:程序那些事
回复「资料」即可免费获得千本技术秘籍!区块链,java,前端,大数据,人工智能,安全,架构,算法,数据库,面试技巧等等方面,应用尽有先到先得!

Tagged: java

2020年,5个你不能不知道的java IDE神器

2020年,5个你不能不知道的java IDE神器

2020年,5个你不能不知道的java IDE神器 TIOBE的4月份编程语言排行榜出来了,java还是稳坐第一位,java最新的版本也到了13,一直以来java凭借其企业级应用的优势和大量的框架级应...

java内存模型(JMM)和happens-before

java内存模型(JMM)和happens-before

java内存模型(JMM)和happens-before 我们知道java程序是运行在JVM中的,而JVM就是构建在内存上的虚拟机,那么内存模型JMM是做什么用的呢? 我们考虑一个简单的赋值问题: i...

非阻塞算法(Lock-Free)的实现

非阻塞算法(Lock-Free)的实现

非阻塞算法(Lock-Free)的实现 上篇文章我们讲到了使用锁会带来的各种缺点,本文将会讲解如何使用非阻塞算法。非阻塞算法一般会使用CAS来协调线程的操作。 虽然非阻塞算法有诸多优点,但是在实现上要...

非阻塞同步机制和CAS

非阻塞同步机制和CAS

非阻塞同步机制和CAS 我们知道在java 5之前同步是通过Synchronized关键字来实现的,在java 5之后,java.util.concurrent包里面添加了很多性能更加强大的同步类。这...

由于不当的执行顺序导致的死锁

由于不当的执行顺序导致的死锁

由于不当的执行顺序导致的死锁 为了保证线程的安全,我们引入了加锁机制,但是如果不加限制的使用加锁,就有可能会导致顺序死锁(Lock-Ordering Deadlock)。上篇文章我们也提到了在线程词中...

我们的线程被饿死了

我们的线程被饿死了

我们的线程被饿死了 我们在构建线程池的时候可以构建单个线程的线程池和多个线程的线程池。 那么线程池使用不当可不可能产生死锁呢?我们知道死锁是循环争夺资源而产生的。线程池中的线程也是资源的一种,那么如果...