设计四个线程,当中共两个线程每次对j添加1,另外两个线程每次对j降低1。循环100次,写出程序。

package cn.usst.DataTest6;

/**
 * 设计四个线程,当中共两个线程每次对j添加1,另外两个线程每次对j降低1。循环100次,写出程序。
 * @
 *
 */
public class DataTest6 {
	private int j;
	public static void main(String[] args) {
		DataTest6 dt = new DataTest6();
		Inc inc = dt.new Inc();
		Dec dec = dt.new Dec();

		for(int i=0;i < 2; i++){
			Thread t = new Thread(inc);
			t.start();
			t = new Thread(dec);
			t.start();
		}
	}

	class Inc implements Runnable{
		public void run() {
			for(int i=0; i<100; i++){
				inc();
			}
		}
	}

	class Dec implements Runnable{
		public void run() {
			for(int i=0; i<100; i++){
				dec();
			}
		}
	}

	private synchronized void inc() {
		j++;
		System.out.println(Thread.currentThread().getName() + " +inc: " + j);
	}

	private synchronized void dec() {
		j--;
		System.out.println(Thread.currentThread().getName() + " -dec: " + j);
	}
}
时间: 2024-08-12 13:41:13

设计四个线程,当中共两个线程每次对j添加1,另外两个线程每次对j降低1。循环100次,写出程序。的相关文章

设计四个线程,其中共两个线程每次对j增加1,另外两个线程每次对j减少1。循环100次,写出程序。

package cn.usst.DataTest6; /** * 设计四个线程,其中共两个线程每次对j增加1,另外两个线程每次对j减少1.循环100次,写出程序. * @ * */ public class DataTest6 { private int j; public static void main(String[] args) { DataTest6 dt = new DataTest6(); Inc inc = dt.new Inc(); Dec dec = dt.new Dec()

设计 4 个线程,其中两个线程每次对 j 增加 1,另外两个线程对 j 每次减少 1。写出程序。

先设计一个类处理加减这一行为: public class ManyThread { private int j = 0; public synchronized void inc(){ j++; System.out.println(Thread.currentThread().getName() + "inc" + j); } public synchronized void dec(){ j--; System.out.println(Thread.currentThread().

面向对象分析与设计—四色原型模式(彩色建模、领域无关模型)(概念版)

阅读目录: 1.背景介绍 2.问自己,UML对你来说有意义吗?它帮助过你对系统进行分析.建模吗? 3.一直以来其实我们被一个缝隙隔开了,使我们对OOAD遥不可及 4.四色原型模式填补这个历史缝隙,让我们真的看见OOAD的希望 5.在四色原型上运用彩色建模增强视觉冲击力 6.通过四色原型模式建模出领域无关模型 7.结束语:建模时你可以不考虑具体实现,但是建模者要懂技术实现 1.背景介绍 至今我都清楚的记得我第一次被面试官问起什么叫"建模"技术时的情景,那是好几年前的事情了,当时是胸有成竹

WisDom.Net 框架设计(四)

WisDom.Net  ----用户安全 1.用户单机登录 正如其名这里要求其实就是显示用户只能在一台电脑上登录.防止多处登录,这里简单的说一下实现原理,我们在这里使用session +cookie 的方法来实现  如下图所示 (1) 输入用户名密码 (2) 校验用户名密码格式是否正确 (3) 传入用户名密码 (4) 校验用户密码是否正确,返回登录LoginGuid (5) 用户名密码是否正确 (6) 判断用户在session中是否存在,存在即更新用户LoginGuid,不存在则新增,并在coo

GPS部标平台的架构设计(四)-百度地图设计

部标GPS软件平台之百度地图设计 地图是客户端中不可缺少的一个模块,很多人在设计和画图时候,喜欢加上地图引擎这样高大上的字眼,显得自己的平台有内涵,说白了就是用第三方的SDK来开发,早期的GPS监 控软件用的都是mapx.mapxtrem.acrgis之类的,使用的都是本地地图.不仅要购买正版地图,还要购买价格不菲的地图引擎license,服务器版的部署的时候,还要绑定到服务器ID上,现在这种开发方式已被抛弃.现在的百度地图.谷歌地图提供的SDK接口丰富,开发方便,系统稳定,大家都用的很爽. 在

读书笔记 --简约至上—交互式设计四策略

读书笔记 --简约至上-交互式设计四策略 Giles Colborne 著 李松峰 秦绪文 译 人民邮电出版社 书中以一页短文配上一页图片的形式,针对如何将一个技术产品更方便地被用户所接受这个主题,向读者娓娓道来,看着不觉吃力,作者将自身的一些调研经验以及对用户研究进行了精炼的总结,并向读者传递了一些实用性的理念.书中的用户主要指普通的.不懂技术的.直接的使用产品的大众. 书中目录: 第1章 话说简单 第2章 明确认识 第3章 简约四策略 第4章 删除 第5章 组织 第6章 隐藏 第7章 转移

设计四原则之如何设计漂亮的简历

在这个看脸的世界,设计漂亮的简历就是给简历一个好的脸蛋.那么如何设计美观的简历呢?我的答案是 设计四原则  +  LaTeX排版 下面先放出我设计的一份简历模板,然后依次讲解. 如果你的第一印象被上面的简历吸引了(只看外观,内容都是瞎掰的O(∩_∩)O哈哈~),并且有拿起电话播(+86)8888-888-888的冲动,那么,继续往下看吧. 首先,记住设计四原则: 1.  对比(Contrast) 2.  重复(Repetition) 3.  对齐(Alignment) 4.  亲密性(Prixi

游戏UI框架设计(四) : 模态窗体管理

游戏UI框架设计(四) --模态窗体管理 我们在开发UI窗体时,对于"弹出窗体"往往因为需要玩家优先处理弹出小窗体,则要求玩家不能(无法)点击"父窗体",这种窗体就是典型的"模态窗体".在此笔者设计了四种模式类型:完全透明.半透明.低透明度.透明且可以穿透. (透明不能穿透) (半透明不能穿透) (低透明度,不能穿透) 对于"模态窗体"的基本实现原理是: 在弹出窗体的后面增加一层"UI遮罩窗体",当需要弹出

U3D架构系列之- FSM有限状态机设计四

接下来,我们继续我们的FSM有限状态机的设计,在设计三中我们实现了FSState这个类,我们继续实现FSEvent事件处理类.在FSEvent类里面我们声明了FiniteStateMachine里面定义的委托函数.代码如下: protected FiniteStateMachine.EnterState mEnterDelegate; protected FiniteStateMachine.PushState mPushDelegate; protected FiniteStateMachin