新手求指点呀,多线程同步问题,上一次传的图片有问题

上一个问题传的图片有点错误,再重新传一下
下面是完整版的代码图片说明图片说明
下面是上面代码的运行结果
图片说明
下面是另一段代码唯一不同就是休眠位置不同图片说明
下面是第二段代码的运行结果图片说明
我想问下第二段代码运行结果是正确的吗/?,为什么两次运行结果不一样?

正不正确主要就看操作的共享数据有没有问题,如果都是稳定的没有相同的就是正确的线程锁,sleep只是让当前线程睡眠了,不会释放掉锁,如果在拿到了锁
之后sleep的,那其他线程只能一直等待,如果没拿到锁就sleep的话就跟正常一样,其他的线程会去抢锁

sleep只会使当前线程休眠,不会释放锁。代码一由于睡眠的时候锁已经释放,所以被另外两个线程竞争到的概率非常大,而第二个就不一样了。