java吧 关注:1,277,451贴子:12,792,247

关于synchronized 互斥锁的问题 ,求问错在哪了

只看楼主收藏回复

如题


1楼2013-06-13 19:47回复

    在方法上加了synchronized,为什么实现不了互斥啊,错在哪了。。。


    2楼2013-06-13 19:48
    回复
      2025-09-09 15:07:34
      广告
      不感兴趣
      开通SVIP免广告


      3楼2013-06-13 20:55
      回复


        4楼2013-06-13 21:59
        回复


          5楼2013-06-13 21:59
          回复


            6楼2013-06-14 06:31
            回复


              7楼2013-06-14 06:35
              回复
                synchronized的锁不是同一对象,当然不能实现同步


                IP属地:浙江8楼2013-06-14 06:54
                收起回复
                  2025-09-09 15:01:34
                  广告
                  不感兴趣
                  开通SVIP免广告
                  没错


                  来自Android客户端9楼2013-06-14 07:01
                  回复
                    不能继承thread应该是runnerble。


                    来自Android客户端10楼2013-06-14 07:16
                    收起回复

                      @自学很辛苦 你的意思是这样改么。。。


                      11楼2013-06-14 07:31
                      回复
                        synchronized加在方法上,默认的对象锁就是this,也就是这个对象,
                        你代码里每一个线程都new HometownDemo1()当然就不是同一对象,所以
                        synchronized同步不了


                        IP属地:浙江12楼2013-06-14 07:39
                        收起回复
                          很简单,你上面初始化一个
                          HomeWorkDemo1 a = new HomeWorkDemo1();
                          teacher student别new HomeWorkDemo1()了
                          a.quqian()就行了


                          IP属地:浙江13楼2013-06-14 07:47
                          回复

                            这样改也不行。我把锁的参数换了个新Object ,把new HomeWork放到run方法外面了


                            14楼2013-06-14 07:47
                            收起回复
                              2025-09-09 14:55:34
                              广告
                              不感兴趣
                              开通SVIP免广告
                              HomeWorkDemo1 a = new HomeWorkDemo1();
                              放在teacher和student的外面,


                              IP属地:浙江15楼2013-06-14 07:50
                              回复