feat: LinkedBlockingQueue 使用

This commit is contained in:
Bunny 2025-01-20 21:33:37 +08:00
parent e371543141
commit ba47472c5c
2 changed files with 41 additions and 0 deletions

View File

@ -42,3 +42,31 @@ System.out.println(poll1);
String peek = queue.peek();
System.out.println(peek);
```
## PriorityBlockingQueue使用
```java
// 无边界队列,可以定义初始容量并不是最大容量
PriorityBlockingQueue<Integer> queue = new PriorityBlockingQueue<>(2);
System.out.println(queue);
// 队列的添加方法都等于offer方法
queue.offer(1);
queue.offer(10);
queue.offer(3);
System.out.println(queue);
```
## LinkedBlockingQueue使用
```java
// 属于可选边界
LinkedBlockingQueue<Integer> integers = new LinkedBlockingQueue<>(10);
boolean b = integers.remainingCapacity() == 10;
System.out.println(b);
// 等于定义的
LinkedBlockingQueue<Integer> integers1 = new LinkedBlockingQueue<>();
boolean b1 = integers1.remainingCapacity() == Integer.MAX_VALUE;
System.out.println(b1);
```

View File

@ -1,4 +1,17 @@
package cn.bunny.atomic;
import java.util.concurrent.LinkedBlockingQueue;
public class AtomicExample07 {
public static void main(String[] args) {
// 属于可选边界
LinkedBlockingQueue<Integer> integers = new LinkedBlockingQueue<>(10);
boolean b = integers.remainingCapacity() == 10;
System.out.println(b);
// 等于定义的
LinkedBlockingQueue<Integer> integers1 = new LinkedBlockingQueue<>();
boolean b1 = integers1.remainingCapacity() == Integer.MAX_VALUE;
System.out.println(b1);
}
}