非公平锁获取锁的流程
*1.通过CAS获取锁,如果获取成功,将当前线程设置成独占线程,结束
*2.如果获取失败,acquire(1)
*3.acquire(1)是AQS中的模板,里面有个钩子tryAcquire(args)让子类去实现
*4.非公平类中自己实现了tryAcquire(args),流程为:首再尝试获取一次锁,如果获取成功,将当前线程设置成独占线程,返回true,结束;如果获取失败,返回false;
*5.这样在第3步中的acquire(args)中第一步返回false,接着判断第二个条件acquireQueued()
参数为addWaiter(Node.EXCLUSIVE),addWaiter顾名思义是添加此节点到等待队列中,