Why java reentrant lock does not cause dead lock?
I was studying Reentrant lock, and did realize that a thread failed to try acquire will be placed in a sync queue, and before it parks, it set its prev node's waitStatus to SIGNAL, and recheck if the prev node has set its stat to 0, if not, it might be sure that the prev node has not unparked it, because it has not cleared the SIGNAL state, so it parks. But what if the interval between
shoudParkAFterFailedAcquire and parkAndCheckInterrrupt takes, say 1 second or 1 minute long,
so unpark arrives first before parking. Would this cause a deadlock?