摘要:
idea快捷键:查找类中所有方法的快捷键 查找类中所有方法的快捷键 第一种:ctal+f12,如下图 第二种:alt+7,如下图 阅读全文
摘要:
浅论Lock 与X86 Cache 一致性 感谢James Zhang 师兄多年前对我的鞭策, 只是这篇文章写的晚了些, 十二年已然过去. 书接上文 重温一下 CAS 操作的伪码 bool compare_and_swap (int *accum, int *dest, int newval) { 阅读全文
摘要:
问题来源于知乎的一篇帖子: 浅论Lock 与X86 Cache 一致性 - wiles super的文章 - 知乎 https://zhuanlan.zhihu.com/p/24146167 该帖子对于原子命令 cmpxchg 的分析引起了我的好奇心。 我原来对 cmpxchg 的原子性的理解没考虑 阅读全文
摘要:
今天找到了新的资料,可以证明我在 上一篇文章 里的猜想是错误的。 这篇 Intel 的资料 给了关于 cache locking 更多的信息: In the days of Intel 486 processors, the lock prefix used to assert a lock on 阅读全文
摘要:
LINUX内核内存屏障 LINUX内核内存屏障 By: David Howells dhowells@redhat.com Paul E. McKenney paulmck@linux.vnet.ibm.com 译: kouu kouucocu@126.com 出处: Linux内核文档 - 阅读全文
摘要:
Why Memory Barriers中文翻译(下) 作者:linuxer 发布于:2016-1-5 18:09 分类:内核同步机制 在上一篇why memory barriers文档中,由于各种原因,有几个章节没有翻译。其实所谓的各种原因总结出一句话就是还没有明白那些章节所要表达的内容。当然,对于 阅读全文
摘要:
LINUX KERNEL MEMORY BARRIERS By: David Howells dhowells@redhat.com Paul E. McKenney paulmck@linux.ibm.com Will Deacon will.deacon@arm.com Peter Zijlst 阅读全文
摘要:
# Why Memory Barriers?中文翻译(上) 本文是对perfbook的附录C Why Memory Barrier的翻译,希望通过对大师原文的翻译可以弥补之前译者发布的关于memory barrier的一篇很拙劣的文章的遗憾。 本文的翻译不是一一对应的翻译,主要是领会精神,用自己的 阅读全文
摘要:
线程之间为什么要通信? 通信的目的是为了更好的协作,线程无论是交替式执行,还是接力式执行,都需要进行通信告知。那么java线程是如何通信的呢,大致有以下四种方式。 Java线程的通信方式 volatile 等待/通知机制 join方式 threadLocal volatile关键字方式 volati 阅读全文
摘要:
通过博客《基于JNI手动模拟Java线程》,我们知道Java线程的创建方式, 本质:就是调用操作系统底层的线程创建函数 , Linux中是pthread_create函数 那么线程加锁在操作系统又是调用什么函数呢? 查了一下是调用操作系统中的pthread_mutex_lock函数。 回到我们今天的 阅读全文