共 31 篇文章
显示摘要每页显示  条
如果在某算法中,一个线程的失败或挂起不会导致其他线程也失败挂起,那么这种算法就被称为非阻塞算法。如果在算法的每个步骤中都存在某个线程能够执行下去,那么这种算法也被称为无所算法(Lock-Free)。1 顶0 踩 分享到:发表评论。
java并发(三十一)Amdahl定律阿姆达尔定律。阿姆达尔(Amdahl)定律是计算机系统设计的重要定量原理之一,于1967年由IBM360系列机的主要设计者阿姆达尔首先提出。阿姆达尔定律实际上定义了采取增强(加速)某部分功能处理的措施后可获得的性能改进或执行时间的加速比。这一公式已被学术界所接受,并被称做“阿姆达尔定律”(Amdahl law)。
java并发(二十八)并发随机数,原子变量,并发集合原子变量。java.util.concurrent.atomic包定义了对单一变量进行原子操作的类。Java代码 public class SynchronizedCounter { private int c = 0; public synchronized void increment() { c++; } public synchronized void decrement() { c--; ...
Java代码 package com.chinaso.phl; import java.math.BigInteger; /** * @author piaohailin * @date 2014-4-23 */ public class ExpensiveFunction implements Computable<String, BigInteger> { @Override public BigInteger compute(String arg) throws InterruptedException { return new BigInteger...
@NotThreadSafe:类不是线程安全的,如果类未加任何注解,则不能确定是否线程安全,认为是非线程安全的。@GuardedBy("fieldName"):值与filedName引用的对象相关联的锁,或者是一个隐式锁(filedName没有引用一个Lock),或者是一个显示锁(filedName引用了一个Lock);@GuardedBy("ClassName.fieldName"):类似于@Guarded...
java并发(二十六)正确使用Volatile变量概述。使用volatile变量可以降低内存一致性错误的风险,因为对volatile变量的任意写操作,对于后续在该变量上的读操作建立了happens-before关系。Java代码 volatile boolean shutdownRequested; ... public void shutdown() { shutdownRequested = true; } public void doWork() { while (!sh...
java并发(二十五)java7之fork如果让我个人理解什么是fork-join,我立刻会想到hadoop的map/reduce。这种并行分解方法常常称作 fork-join,因为执行一个任务将首先分解(fork)为多个子任务,然后再合并(join)(完成后)。除了能够使用fork/join框架来实现能够在多处理系统中被并行执行的定制化算法(如前文中的ForkBlur.java例子),在Java ...
java并发(二十三)阻塞、非阻塞、同步、异步因为中文语意的问题,很多时候确实会导致混用,而且语境不一样意义也可能不一样。我去买一本书,立即买到了,这就是非阻塞;阻塞非阻塞、同步异步可以组合,但是没必要组合,应该说是不同的IO机制,没必要纠结怎么区分,如果定要组合心里才爽,可以 这样认为:阻塞非阻塞都是同步,异步就没什么阻塞...
帮助 | 留言交流 | 联系我们 | 服务条款 | 下载网文摘手 | 下载手机客户端
北京六智信息技术股份有限公司 Copyright© 2005-2024 360doc.com , All Rights Reserved
京ICP证090625号 京ICP备05038915号 京网文[2016]6433-853号 京公网安备11010502030377号
返回
顶部