黑马程序员技术交流社区
标题:
同步的问题
[打印本页]
作者:
杨同旺
时间:
2013-4-23 21:36
标题:
同步的问题
本帖最后由 杨同旺 于 2013-4-23 22:19 编辑
以下的代码,method1和method2使用的是同一个锁,但为什么会报错?
Exception in thread "Thread-0" java.lang.StackOverflowError
报的错是线程0的栈溢出,为什么报这个错?
---------------------------------------------------------------------------------
new Thread(new Runnable()
{
@Override
public void run()
{
method1();
}
synchronized void method1()
{
method2();
}
synchronized void method2()
{
method1();
}
}
).start();
作者:
杨同旺
时间:
2013-4-23 22:18
本帖最后由 杨同旺 于 2013-4-23 23:09 编辑
帖子发错了,以上是死循环,所以报这个错
作者:
$love
时间:
2013-4-23 22:31
你写的这个代码形成递归了!
所以才会出现这个异常
同步不能够这样嵌套,所以才不写在那里!
你写那里编译都不通过!
操作共有数据才会写同步!
你这里同步不同步我个人感觉都没多大关系
希望可以帮到你
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2