摘要: mytest t2 = new mytest();原题目是这样的:根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?并简要说明理由。publicvoidtest(inti){lock(this){if(i>10){i--;test(i);}}}百度了一下,有人说如果i是引用类型就会死锁;个人理解,这个,死不死锁,跟 int i,一点关系都没有,因为,如果要当成线程执行的方法,test必须写成 public void test(object i){} 这个形式的,不然编译都会报错,而造成死锁的关键,就是lock(this);这句的意思,锁定当前实例; 阅读全文
posted @ 2013-04-16 14:11 姜大伟 阅读(557) 评论(0) 推荐(0) 编辑