花费 5 ms
【杂谈】从底层看锁的实现2

前言 我的上一篇博客的案例中,请求锁的线程如果发现锁已经被其他线程占用,它是通过自旋的方式来等待的,也就是不断地尝试直到成功。本篇就讨论一下另一种方式,那就是挂起以等待唤醒。 注:相关代码都来自《 ...

Sun Jun 30 18:56:00 CST 2019 0 1871
【杂谈】从底层看锁的实现

以下内容针对互斥锁。 为什么需要锁? 锁代表着对临界区的访问权限。只有获得锁的操作对象,才能进入临界区。 锁的本质是什么? 锁的本质是一个数据结构(或者说是一个对象),这个对象内保留着描述锁所 ...

Tue Jun 18 00:54:00 CST 2019 0 712
SingleThreadExecutor(单线程执行器)

前要:一般的执行器会为每个任务单独创建线程,起码是分配单独的线程,即每个任务有其自己的线程。这样可以让任务并发执行。 问题:既然这样,为什么只用一个线程处理多个任务呢? ...

Thu Aug 16 04:54:00 CST 2018 0 1123
揭开Future的神秘面纱——结果获取

前言   在前面的两篇博文中,已经介绍利用FutureTask任务的执行流程,以及利用其实现的cancel方法取消任务的情况。本篇就来介绍下,线程任务的结果获取。 系列目录 揭开Futur ...

Mon Nov 05 06:54:00 CST 2018 0 974

 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM