java面试题二十九 多线程数据共享问题
2024-06-03 19:42:47
1 编一个程序,实现2个线程对 j 变量自增, 2个线程对 j 变量自减
2 代码如下
public class TestThread {public static void main(String[] args) {NewThread nt=new NewThread();new Thread(nt).start(); new Thread(nt).start(); new Thread(nt).start(); new Thread(nt).start(); }}
class NewThread implements Runnable
{int j=0;String runThreadName = null;public void run(){while(true){ synchronized(this){try {Thread.sleep(1000);runThreadName = Operation(Thread.currentThread().getName());System.out.println(runThreadName+" : j = " +j);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}public String Operation(String threadName){int operation = Integer.parseInt(threadName.split("-")[1]);String name = null;switch(operation){case 0: j++;name="自增线程1";break;case 1: j++;name="自增线程2";break;case 2: j--;name="自减线程3";break;case 3: j--;name="自减线程4";break;}return name;}
}
java面试题二十九 多线程数据共享问题相关推荐
- java面试题二十六 多线程考题
- java面试题二十八 从未用过的 native
一 考题 二 native延伸 native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中.Java语言本身不能对操作系统底层进行访 ...
- C语言试题二十九之编写函数int function(int lim,int aa[max])求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求的素数的个数。
1. 题目 编写函数int function(int lim,int aa[max]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求的素数的个数. 2 .温馨提示 C语 ...
- java面试题二十五 构造函数
- java面试题二十四 继承题2
对于选项C int add(int i,int j){} ,前面没有加public ,private等修饰符,则默认为default,以下是private ,protected,public,def ...
- java面试题二十 try catch
- 【零基础学Java】—final关键字与四种用法(二十九)
[零基础学Java]-final关键字与四种用法(二十九) 一.final关键字 final关键字代表最终.不可改变的 常见的四种用法: 可以用来修饰一个类 可以用来修饰一个方法 可以用来修饰一个局部 ...
- 【Microsoft Azure 的1024种玩法】二十九.基于Azure VM快速实现网络入侵检测 (IDS) 及网络安全监视 (NSM)
[简介] 数据包捕获是一个重要组件,可以实施网络入侵检测系统 (IDS) 并执行网络安全监视 (NSM). 我们可以借助开源 IDS 工具来处理数据包捕获,并检查潜在网络入侵和恶意活动的签名. 使用网 ...
- 2021年大数据Hadoop(二十九):关于YARN常用参数设置
全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 关于yarn常用参数设置 设置container分配最小内 ...
最新文章
- iOS 项目中包含多个 FFMPEG 方法冲突的通用解决办法。
- python 程序运行插件_如何使Python插件在Pluma中运行?
- css textarea行数_限制textarea中的行数并使用jQuery显示行数
- 可行的DeltaSpike教程
- c 连接mysql.mwb_CodeSmith连接mysql提示“找不到请求的 .Net Framework Data Provider”的解决方法...
- BZOJ1827[USACO 2010 Mar Gold 1.Great Cow Gathering]——树形DP
- 服务器安装linux系统教程
- phpstudy的php fpm,浅谈PHP-FPM参数
- 数据分析模型篇—安索夫矩阵
- [线段树or笛卡尔树+简单KMP]poj4005 or hdu4125 Moles
- Python输出1000以内质数代码
- 2019最新微信公众平台PHP开发搭建与揭秘(附代码)
- c语言检测网络连接,C++ 网络连通性检测的实现方法
- ARKit 2推出共享体验
- Fate原理(面试必备)
- 2021-2027全球与中国工业锂电池市场现状及未来发展趋势
- OCR识别之LEADTOOLS介绍
- 点评《云计算:从基础架构到最佳实践》
- 软件架构设计原则-DIP依赖倒置原则
- 阿里云u1服务器通用算力型CPU处理器性能测评
热门文章
- 汇编语言 明明定义了栈仍然no stack segment 以及栈空间数据被篡改问题
- 牛客网_PAT乙级_10234有理数四则运算(20)【通过5/7:格式错误】
- Python基础之:Python中的模块
- 程序员如何用糖果实现盈利 - [别人家的程序员01]
- Java知识整理——垃圾回收
- C/C++数组指针和指针数组
- 自然语言处理中的模式(模式0:模式无处不在模式)
- jQuery的next()、nextAll()、nextUntil()方法
- 假设你有一个数组,其中第i 个元素是第i天给定股票的价格。设计算法以找到最大利润。你可以根据需要完成尽可能多的交易(即,多次买入并卖出一股股票)。注意:您不能同时进行多笔交易(即,您必须在再次购买之前
- php sdk微信,GitHub - swayer/wechat-php-sdk: 微信公众平台 PHP SDK