删除并返回整个头节点 @return 头节点,null if empty
()
| 207 | * @return 头节点,null if empty |
| 208 | */ |
| 209 | public BQueueNode pollNode() { |
| 210 | var root = getRoot(); |
| 211 | if (root == null) |
| 212 | return null; |
| 213 | |
| 214 | var headKey = root.getHeadNodeKey(); |
| 215 | if (headKey.getNodeId() == 0) |
| 216 | return null; |
| 217 | |
| 218 | var head = getNode(headKey); |
| 219 | if (head == null) |
| 220 | return null; |
| 221 | |
| 222 | root.setHeadNodeKey(head.getNextNodeKey()); |
| 223 | root.setCount(root.getCount() - head.getValues().size()); |
| 224 | module._tQueueNodes.remove(headKey); |
| 225 | return head; |
| 226 | } |
| 227 | |
| 228 | public void clear() { |
| 229 | while (pollNode() != null) { |
no test coverage detected