【转载】java按位与、按位或、异或、移位、按位非
- 按位与:
&
- 按位或:
|
- 异或:
^
- 有符号移位:
>>、<<
- 无符号移位:
>>>、<<<
- 按位非:
~
为了有效地管理CPU,操作系统引入了线程的概念,即以进程为基本单位来实现CPU的分配与执行。随着并行处理技术的发展,为了进一步提高系统的并行性,实现进程内部的并发执行,操作系统又引入了线程的概念。这样,CPU的管理最终归结于对进程和线程的管理。
由于计算机的运算能力十分强大而且和计算机的存储和通信子系统的的速度差距过大,大量时间都花费在I/O、网络通信和数据库访问上,因此让计算机同时处理几项任务是最容易而且也更有效的“压榨”计算机运算能力的手段。
Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK 8)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。
Java中往往是按照是否含有某一特性来定义锁,我们通过特性将锁进行分组归类,再使用对比的方式进行介绍,帮助大家更快捷的理解相关知识。下面给出本文内容的总体分类目录: