收录了 原子操作 频道下的 50 篇内容
本文是上次:http://www.infoq.com/cn/articles/cache-coherency-primer的第二篇。第一篇刊出后受到了很多转发,反响非常好。主题依然是内存操作方面的。
原子(atom)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意为"不可被中断的一个或一系列操作" 。在多处理器上实现原子操作就变得有点复杂。本文让我们一起来聊一聊在Intel处理器和Java里是如何实现原子操作的。
volatile关键字可能是Java开发人员“熟悉而又陌生”的一个关键字。本文将从volatile关键字的作用、开销和典型应用场景以及Java虚拟机对volatile关键字的实现这几个方面为读者全面深入剖析volatile关键字。
CAP理论断言任何基于网络的数据共享系统,最多只能满足数据一致性、可用性、分区容忍性三要素中的两个。在本篇IEEE文章里面,作者Eric Brewer详述了系统设计师如何通过显式处理分区情况,来优化数据一致性和可用性,进而取得三者之间的平衡。
高并发(>= 10000 clients) 场景下可以替代ZooKeeper和etcd
假定有两个操作A 和B,如果从执行A 的线程来看,当另一个线程执行B 时,要么将B 全部执行完,要么完全不执行B,那么A 和B 对彼此来说是原子的。
文本已收录至我的GitHub仓库,欢迎Star:https://github.com/bin392328206/six-finger
这篇博文章探讨了 WebAssembly 支持多线程的内部机制与新的指令集,并介绍了这一功能如何为多线程应用程序提供支持。
学习MongoDB中的原子操作,了解其WriteUnitOfWork、LockState、RecoryUnit几个重要组成部分。学习其乐观锁的设计,高效地完成原子操作的功能。
Java技术领域,网络通信和多线程并发编程是相对较高级和难掌握的领域,作为高性能的NIO通信框架,线程模型对Netty的性能影响非常大,Netty的高性能是建立在灵活和高效的并发编程基础之上。通过学习Netty的多线程并发编程技巧,对于我们掌握并在实践中灵活应用Java多线程编程来提升系统性能带来很大的帮助。
本篇把原子操作单独拿出来详细阐述,结合前面两篇文章中的CPU多级缓存结构进行串联,加深理解。下一篇会全面研究Java的内存模型
Java 7向语言中引入了一些有用的特性,其中包括一个新的I/O文件包。相对于老的java.io包,这个包针对文件系统——特别是基于POSIX的系统——提供了粒度更细的控制功能。本文首先介绍一下新的API,之后通过一个基于Web的文件管理器项目WebFolder来详细探索这些API。
我选择使用Go语言来实现,因为它对并发支持得非常好,还提供了丰富的标准库。
因为项目涉及到Nginx一些公共模块的使用,而且也想对惊群效应有个深入的了解,在整理了网上资料以及实践后,记录成文章以便复习巩固。
从头至尾捋一捋 Go 语言在 2022 年的发展和变化,以及它将会在 2023 年如何继续前行。
Redis的使用难吗?不难,Redis用好容易吗?不容易。Redis的使用虽然不难,但与业务结合的应用场景特别多、特别紧,用好并不容易。我们希望通过一篇文章及Demo,即可轻松、快速入门并学会应用。
本文剖析了AQS原理。