ex_11_3_1.java

来自「JAVA程序设计与实践.rar」· Java 代码 · 共 44 行

JAVA
44
字号
/*
 *文件名:ex_11_3_1.java
 *说  明:共享冲突
 */
public class ex_11_3_1 implements Runnable
{
	//x是共享的变量
	public int x;
	public static void main(String[] args)
	{
		ex_21_4 test = new ex_21_4();
		//用一个BadSharing类的实例来创建两个线程
		Thread t1 = new Thread(test);
		Thread t2 = new Thread(test);
		//将这两个线程由新建状态变成可运行状态
		t1.start();
		t2.start();

	}
	//线程的执行代码
	public void run()
	{
		//临时变量temp可以看作是寄存器
		int temp;
		while(true)
		{
			temp = x+1;
			//睡眠线程以使另一个线程可以运行。
			try
			{
				Thread.sleep(1000);

			}
			catch(InterruptedException e)
			{

			}
			
			x = temp;
			//打印出当前线程中的x的值
			System.out.println("线程"+Thread.currentThread().getName()+"中的x值为"+x);
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?