阅读背景:

多线程(多线程的安全问题)

来源:互联网 

一.线程不安全示例:
代码1:

class Ticket implements Runnable
{
	public int tick = 100;
	Object obj = new Object();
	boolean flag = true;
	@Override
	public void run() {
		while (true) {
			if(tick>0)
			{
				try { Thread.sleep(10); }
				catch (InterruptedException e) 
				{ e.printStackTrace(); }
				System.out.println(Thread.currentThread().getName()+"...sale: "+tick--);
			}else {
				break;
			}
		}
	}
}

class TicketDemo2{
	public static void main(String[] args) {
		Ticket ticket = new Ticket();
		
		Thread t1 = new Thread(ticket,"张三");
		Thread t2 = new Thread(ticket,"李四");
		Thread t3 = new Thread(ticket,"王五");
		
		t1.start();
		t2.start();
		t3.start();
	}
}

class Ticket implements Runnable




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: