设计 4个线程,其中两个线程每次对 j 增加 1,另外两个线程对 j 每次减少 1。写出程序
来源:互联网 发布:linux系统怎么操作 编辑:程序博客网 时间:2024/06/02 01:51
package encode;public class TestFourThread { private int j=0;//实现runable接口的线程可以共享变量,实现Runnable接口能够多个线程共享资源 private synchronized void add(){//对最底层方法进行同步,也可以对其内部进行同步 try { j++; System.out.println("线程正在对j加1---------------j的值="+j); Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } private synchronized void min(){ try { j--; System.out.println("线程正在对j减1---------------j的值="+j); Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } class ThreadAdd implements Runnable{ @Override public void run() { add(); } } class ThreadDec implements Runnable{ @Override public void run() { min(); } } public static void main(String[] args) throws InterruptedException { TestFourThread t = new TestFourThread(); ThreadAdd add1= t.new ThreadAdd(); ThreadDec des1 = t.new ThreadDec(); for(int i = 0;i<2;i++){ Thread addThread = new Thread(add1); addThread.start(); synchronized (addThread) { try { System.out.println("Waiting for addThread to complete..."); addThread.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } Thread descThread = new Thread(des1); descThread.start(); synchronized (descThread) { System.out.println("Waiting for descThread to complete..."); descThread.notify(); } } } }
0 0
- 一道java线程面试题--设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。考虑到线程的安全性写出程序。
- 123、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 设计 4 个线程, 其中两个线程每次对 j 增加 1 , 另外两个线程对 j 每次减少 1 。 写出程序
- 设计 4个线程,其中两个线程每次对 j 增加 1,另外两个线程对 j 每次减少 1。写出程序
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- java面试笔试题:设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1.写出程序
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。
- PostgreSQL中删除的数据能否恢复
- SFilter框架理解
- [POJ 3684] Physics Experiment (脑洞+弹性碰撞模型)
- C#在终端服务器只允许运行应用程序的一个实例
- ElasticSearch的Marvel更新license
- 设计 4个线程,其中两个线程每次对 j 增加 1,另外两个线程对 j 每次减少 1。写出程序
- Unity3D学习日记(二)使用UGUI制作虚拟摇杆控制摄像机
- ZOJ 1113
- CornerStone上传静态库(.a文件)
- 线程:This application is modifying the autolayout engin from a background thread
- 搬圆桌-Java
- 产生、获取及清理缓存笔记
- njust 1927 谁才是最强战舰!(anti-nim博弈论)
- 二叉树的所有路径