Controller ended... Thread :2 start...... wait to entry synchronize block Thread :4 start...... wait to entry synchronize block Thread :3 start...... wait to entry synchronize block Thread :1 start...... wait to entry synchronize block Name:2 in use; define Sleep Time: 4706,wait 50000 to out the synchronize block Name:2 end 5000 sleep . Sleep some time after notify to test if others can end first Name:2 will Exit the synchronize block Name:2 End. false Thread :2 start to sleep4760mms Name:1 in use; define Sleep Time: 864,wait 50000 to out the synchronize block Thread :2 wakeup, end. Name:1 end 5000 sleep . Sleep some time after notify to test if others can end first Name:1 will Exit the synchronize block Name:1 End. false Thread :1 start to sleep452mms Name:3 in use; define Sleep Time: 4594,wait 50000 to out the synchronize block Thread :1 wakeup, end. Name:3 end 5000 sleep . Sleep some time after notify to test if others can end first Name:3 will Exit the synchronize block Name:3 End. false Thread :3 start to sleep1738mms Name:4 in use; define Sleep Time: 2171,wait 50000 to out the synchronize block Thread :3 wakeup, end. Name:4 end 5000 sleep . Sleep some time after notify to test if others can end first Name:4 will Exit the synchronize block Name:4 End. false Thread :4 start to sleep4657mms Thread :4 wakeup, end. ------------------------------------------------------------------------------------------------------------- Controller ended... Thread :3 start...... wait to entry synchronize block Thread :2 start...... wait to entry synchronize block Thread :4 start...... wait to entry synchronize block Name:3 in use; define Sleep Time: 3498,wait 50000 to out the synchronize block Thread :1 start...... wait to entry synchronize block Name:3 end 5000 sleep . Sleep some time after notify to test if others can end first Name:3 will Exit the synchronize block Name:3 End. false Thread :3 start to sleep3094mms Name:4 in use; define Sleep Time: 3370,wait 50000 to out the synchronize block Thread :3 wakeup, end. Name:4 end 5000 sleep . Sleep some time after notify to test if others can end first Name:4 will Exit the synchronize block Name:4 End. false Thread :4 start to sleep467mms Name:2 in use; define Sleep Time: 4965,wait 50000 to out the synchronize block Thread :4 wakeup, end. Name:2 end 5000 sleep . Sleep some time after notify to test if others can end first Name:2 will Exit the synchronize block Name:2 End. false Thread :2 start to sleep3815mms Name:1 in use; define Sleep Time: 4660,wait 50000 to out the synchronize block Thread :2 wakeup, end. Name:1 end 5000 sleep . Sleep some time after notify to test if others can end first Name:1 will Exit the synchronize block Name:1 End. false Thread :1 start to sleep1840mms Thread :1 wakeup, end.