2017-02-28 10:18:47
Java 并发模型的详细介绍
并发系统可以使用不同的并发模型去实现。一个并发模型指定着线程在系统协作中是如何完成被给与的任务。翻译地址:http://tutorials.jenkov.com/java-concurrency/concurrency-models.html
1215
2017-02-28 10:22:40
Java 相同的线程
相同线程是一个并发模型,这种并发模型的含义是一个单线程的系统向外扩展成为N个单线程的系统。这个结果就是N个单线程的系统并行运行。一个相同线程的系统不是一个纯粹的单线程系统,因为它包含了多个线程。但是这些线程中的每一个就像是一个单线程系统运行一样。为什么是单线程的系统今天你可能想知道为什么每一个都被设计成单线程系统呢。单线程系统已经得到普及,因为他们的并发模型比多线程更加简单。单线程系统
1605
2017-02-28 10:26:59
Java 并发对并行的详细介绍
并行和并发这个条目经常使用在有关于多线程程序中。但是并行和并发确切的含义是什么呢?以及他们是相同的或者什么?
1519
2017-02-28 10:29:57
创建以及启动一个Java线程
Java线程是一个类似其他任何对象的一个对象类型。线程是java.lang.Thread类的实例,或者这个类的子类的实例。除了作为对象类型之外,java线程也可以执行代码。创建和启动一个线程创建一个线程可以像下面这样:Thread thread = new Thread();为了启动Java线程,你需要调用start方法,像下面这样:thread.start();这个例子没
1616
2017-02-28 10:35:36
Java 竞态条件和临界段
一个竞态条件是一个特殊的条件,可能发生在一个临界部分的内部(critical section)。一个临界部分是一段正在被多线程执行的代码,翻译地址:http://tutorials.jenkov.com/java-concurrency/race-conditions-and-critical-sections.html
1356
2017-02-28 10:37:29
Java 线程全和共享资源
代码被多线程同时的调用是安全的称之为线程安全。如果一段代码是线程安全的,那么它就不包含竞态条件。竞态条件只是发生在多线程更新共享资源的时候。因此知道Java线程什么时间执行共享的资源是重要的。局部变量局部变量存储在每一个线程自己的栈中。那就意味着局部变量在线程之间不会共享。那也意味着所有的局部原始变量是线程安全的。这里有一个例子:public void someMethod(){
1683
2017-02-28 10:38:33
java 线程安全和不可变性
竞态条件的发生只是在如果两个线程同时访问相同的资源,以及一个或者更多的线程写这个资源。如果多个线程读这个相同的资源,竞态条件不会发生。我们可以确定,在线程之间共享的对象通过使得这个共享的对象不可变,不会被任何的线程更新,从而是线程安全的。这里有一个例子:public class ImmutableValue{ private int value = 0; public Immu
1759
2017-02-28 10:41:42
Java内存模型的详细介绍
这个Java内存模型指定的是Java虚拟机如何跟计算机内存(RAM)一起工作。这个Java虚拟机是整个计算机的模型,以至于这个模型自然的包括的一个内存模型----也叫作Java内存模型。理解Java内存模型是很重要的,如果你想正确的设计并发程序。这个Java内存模型指的是如何以及什么时间不同的线程可以看到被其他线程写入的共享变量的值,以及如何同步的访问共享变量。最初的Java内存模型是不足
1611
2017-02-28 10:47:18
2017-02-28 10:48:59
Java的Volatile关键字详解
这个Java的volatile关键字是用来标示一个Java变量作为“正在被存储在主内存的”。更加准确地说意味着,一个volatile变量的每一次读取都是从计算机的主内存中读取,而不是从CPU缓存中,并且对于一个volatile变量的每一次写将会写到主内存中,而不只是写入到CPU缓存中。
2136