liuzl121 2013-01-25 15:31
浏览 264
已采纳

synchronized (conTasks) { } 什么意思

如题:synchronized (conTasks) {} ,conTasks是一个对象。

  • 写回答

4条回答 默认 最新

  • guohao1949 2013-01-27 11:57
    关注

    conTasks对象就是一把锁,当你的程序将要进入你的{}之前,程序会拿到conTasks对象,如果能拿到,说明此时此刻{}括号中的内容没有别人在调用,此时你的程序可以进入{}括号中执行,假如{}中的内容已经有别的地方在调用,你是拿不到conTasks对象的,这时你的程序就要在{}外面等着,等着别人的程序调用完{}号中的内容,他就会把conTasks对象锁释放掉,你就得到了,然后你就能执行{}号中的内容了。
    我们建议一般synchronized (conTasks) conTasks的位置放一个唯一的东西,比如说当前对象的.class或者代表当前对象的this,这样能保证只有一把锁,保证了线程安全,synchronized才能起到作用

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?