根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?并简要说明理由。
2016-09-05 20:04
295 查看
public void test(int i)
{
lock(this)
{
if (i>10)
{
i--;
test(i);
}
}
}
答:不会发生死锁,(但有一点int是按值传递的,所以每次改变的都只是一个副本,因此不会出现死锁。但如果把int换做一个object,那么死锁会发生)
相关文章推荐
- Java NIO详解
- Java基础
- 一道留学作业题//C语言
- PAT(乙级)1013 组个最小数 (20)
- 13_CXF和Spring整合发布服务
- PyCHarm使用教程
- Hellow Java!
- java实现在同一Excel文件上写数据
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- c语言防止缓冲区数据作为有效字符被读入
- LeetCode 6. ZigZag Conversion
- 使用java连接hive,并执行hive语句详解
- c++ 智能指针及 循环引用问题
- gradle编译spring源码遇到的错误
- java 通过jdbc驱动连接hive操作实例
- UVa OJ 11093 - Just Finish it up
- 从相对路径说开来(从C++到Qt)
- 电商平台在线叫快递员的功能实现代码-快递鸟
- Cpp环境【CQYZOJ1496】【Code[VS]5287】搬家大冒险
- C/C++框架