多个线程之间共享数据

原创 2013年12月04日 10:21:00

启动两个线程,其中一个每次增加1,另外一个线程每次减一,写出程序?

 

package hb.thread;

public class MultThread {

	private int i = 0;

	public static void main(String[] args) {
		MultThread mt = new MultThread();
		//访问内部类的方式
		new Thread(mt.new Inc()).start();
		new Thread(mt.new Dec()).start();
	}

	public synchronized void inc() {
		i++;
		System.out.println(Thread.currentThread().getName() + "-----" + i);
	}

	public synchronized void dec() {
		i--;
		System.out.println(Thread.currentThread().getName() + "-----" + i);
	}

	// 实现增加数据
	class Inc implements Runnable {
		@Override
		public void run() {
			for (int i = 0; i < 1000; i++) {
				inc();
			}
		}
	}

	// 实现减少数据
	class Dec implements Runnable {
		@Override
		public void run() {
			for (int i = 0; i < 1000; i++) {
				dec();
			}
		}
	}

}

 

 

相关文章推荐

JAVA 并发编程-多个线程之间共享数据(六)

多线程共享数据的方式: 1,如果每个线程执行的代码相同,可以使用同一个Runnable对象,这个Runnable对象中有那个共享数据,例如,卖票系统就可以这么做。2,如果每个线程执行的代码不同,这时候...

多个线程之间共享数据

多个线程之间共享数据,首先想到的是将共享数据设置为全局变量,并且用static修饰,但是static修饰的变量是类变量,生命周期太长了,占用内存,本文将介绍三种方法实现多个线程之间共享数据。方法一:多...

多个线程之间共享数据的方式探讨

例子:卖票:多个窗口同时卖这100张票,票就需要多个线程共享 a、如果每个线程执行的代码相同,可以使用同一个Runnable对象,这个对象中有共享数据。 卖票就可以这样做,每个窗口都在做卖票任务,...

Java多个线程之间处理共享数据的方式

题目要求: 有4个线程,其中两个线程每次对x加1,另外两个每次对x减1,如何实现?分析:    x就是这4个线程要处理的共享数据,不同种线程有不同的处理方式,但操作的数据是共同的,联想到“窗口买票问题...

Java高并发编程:多个线程之间共享数据的方式探讨

多个线程之间共享数据,按照每个线程执行代码是否相同,我们可以采取不同的处理方式,这里通过简单的卖票示例说明了当每个线程执行相同代码的情况,对于多个线程执行不同代码的情况,处理方式比较灵活,这里主要介绍...

(6)多个线程 之间共享数据的方式探讨(设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1 )

如果每个线程执行的代码相同,可以使用同一个Runnable对象,这个Runnable对象中有那个共享的数据,例如 买票系统就是那么做的。 package com.itm.thread; pub...

6、多个线程的共享数据

1、方式 1,如果每个线程执行的代码相同,可以使用同一个Runnable对象,这个Runnable对象中有那个共享数据,例如,卖票系统就可以这么做。2,如果每个线程执行的代码不同,这时候需要用不同的...

Android多线程研究(5)——线程之间共享数据

一、如果是每个线程都执行相同的代码,则可以使用同一个Runnable来实现共享public class MultiThreadShareData { public static void main(...

多个Activity之间共享数据的5种方式以及 Application Context

今天面试安卓开发岗位的时候,面试官问了我一个很简单的问题:个Activity之间如何共享数据 。一时只回答了intent和广播两种方式。回来一查,发现自己的回答很不靠谱。 其实有如下5种方式...

SharedPreferences多个程序之间共享数据

Android平台给我们提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数。使用SharedPreferences保存数据,其背后是用xml文件存放数...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:多个线程之间共享数据
举报原因:
原因补充:

(最多只允许输入30个字)