设计四个线程,其中两个线程每次对j加1,另外两个线程每次对j减1
2024-08-29 12:59:37
public class ManyThreads2 {
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().getName() + "dec" + j);
} }
public class MyTest { private ManyThreads2 many = new ManyThreads2(); public static void main(String[] args) {
// TODO Auto-generated method stub
MyTest myTest = new MyTest();
myTest.test();
} public void test() {
for (int i = 0; i < 2; i++) {
new Thread(new Runnable() { @Override
public void run() {
// TODO Auto-generated method stub
for (int i = 0; i < 20; i++) {
many.inc();
}
} }).start();
new Thread(new Runnable() { @Override
public void run() {
// TODO Auto-generated method stub
for (int i = 0; i < 20; i++) {
many.dec();
}
} }).start();
}
}
}
最新文章
- SharePoint Server2016的User Profile Services服务
- Apriori on MapReduce
- 杭电OJ——1198 Farm Irrigation (并查集)
- 封装WCF客户端调用
- SQL Server 2008中SQL增强之三:Merge(在一条语句中使用Insert,Update,Delete) 一条语句实现两表同步(添加、删除、修改)
- ionic android app 签名处理
- 轻松搭建Windows8云平台开发环境
- json 与entity/list/map的转换
- linux下怎么样上传下载文件夹
- Python3.4 枚举类型的使用
- windows环境下的git安装及使用
- java多线程系列六、线程池
- Knockout开发中文API系列1
- linux学习路线图
- ajax方法携带授权标识
- golang笔记
- 推荐一个可以把网页背景色调成护眼色的Chrome扩展应用
- day 4 集合
- 《Java程序设计》第五周学习总结 20165218 2017-2018-2
- npm run dev报错,events.js:160 throw er; // Unhandled &#39;error&#39; event
热门文章
- Android之Intent和Activity
- 【翻译自mos文章】执行utlpwdmg.sql之后报ORA-28003, ORA-20001, ORA-20002, ORA-20003, ORA-20004 错误
- ubuntu14.04设置sublime text3为默认文本编辑器
- visual C++ &; Makefile
- hunnu--11548--找啊找啊找朋友
- 【BZOJ3696】化合物 树形DP+暴力
- 之前博客中的代码都放到github上
- RSA加密、解密、公钥私钥生成
- 时间写入文件名 nohup 原理 Command In Background your shell may have its own version of nohup
- 【网络与系统安全】利用burpsuite进行重放攻击