线程之间数据不共享

package com.freeflying.thread.base;
/**
 * @ClassName: DataNotShare  
 * @Description:多个线程之间数据不共享
 * @author freeflying
 * @date 2018年6月22日
 */
public class DataNotShare {
	public static void main(String[] args) {
		Thread4 thread1=new Thread4("one");
		Thread4 thread2=new Thread4("two");
		Thread4 thread3=new Thread4("three");
		thread1.start();
		thread2.start();
		thread3.start();
	}
}
class Thread4 extends Thread{
	private int count=5;
	public Thread4(String name) {
		this.setName(name);
	}
	@Override
	public void run() {
		while(count > 0) {
			count--;
			System.out.println("this is "+this.currentThread().getName()+" calculate,count="+count);
		}
	}
}

结果:

this is one calculate,count=4
this is two calculate,count=4
this is one calculate,count=3
this is two calculate,count=3
this is two calculate,count=2
this is two calculate,count=1
this is two calculate,count=0
this is one calculate,count=2
this is one calculate,count=1
this is one calculate,count=0
this is three calculate,count=4
this is three calculate,count=3
this is three calculate,count=2
this is three calculate,count=1
this is three calculate,count=0


你可能感兴趣的:(java多线程)