1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

[docs fix]typo

This commit is contained in:
Guide 2025-03-18 19:23:20 +08:00
parent 76e4dbaa3b
commit 352b05c186
4 changed files with 5 additions and 5 deletions

View File

@ -88,7 +88,7 @@
**重要知识点详解**
- [乐观锁和悲观锁详解](./docs/java/concurrent/jmm.md)
- [乐观锁和悲观锁详解](./docs/java/concurrent/optimistic-lock-and-pessimistic-lock.md)
- [CAS 详解](./docs/java/concurrent/cas.md)
- [JMMJava 内存模型)详解](./docs/java/concurrent/jmm.md)
- **线程池**[Java 线程池详解](./docs/java/concurrent/java-thread-pool-summary.md)、[Java 线程池最佳实践](./docs/java/concurrent/java-thread-pool-best-practices.md)

View File

@ -72,7 +72,7 @@ title: JavaGuideJava学习&面试指南)
**重要知识点详解**
- [乐观锁和悲观锁详解](./java/concurrent/jmm.md)
- [乐观锁和悲观锁详解](./java/concurrent/optimistic-lock-and-pessimistic-lock.md)
- [CAS 详解](./java/concurrent/cas.md)
- [JMMJava 内存模型)详解](./java/concurrent/jmm.md)
- **线程池**[Java 线程池详解](./java/concurrent/java-thread-pool-summary.md)、[Java 线程池最佳实践](./java/concurrent/java-thread-pool-best-practices.md)

View File

@ -579,7 +579,7 @@ public class ThreadPoolTest {
![将一部分任务保存到MySQL中](https://oss.javaguide.cn/github/javaguide/java/concurrent/threadpool-reject-2-threadpool-reject-02.png)
整个实现逻辑还是比较简单的,核心在于自定义拒绝策略和阻塞队列。如此一来,一旦我们的线程池中线程达到满载时,我们就可以通过拒绝策略将最新任务持久化到 MySQL 数据库中,等到线程池有了有余力处理所有任务时,让其优先处理数据库中的任务以避免"饥饿"问题。
整个实现逻辑还是比较简单的,核心在于自定义拒绝策略和阻塞队列。如此一来,一旦我们的线程池中线程达到满载时,我们就可以通过拒绝策略将最新任务持久化到 MySQL 数据库中,等到线程池有了有余力处理所有任务时,让其优先处理数据库中的任务以避免"饥饿"问题。
当然,对于这个问题,我们也可以参考其他主流框架的做法,以 Netty 为例,它的拒绝策略则是直接创建一个线程池以外的线程处理这些任务,为了保证任务的实时处理,这种做法可能需要良好的硬件设备且临时创建的线程无法做到准确的监控:

View File

@ -85,7 +85,7 @@ String name = "Lokesh";
String message = STR."Greetings \{name}.";
//FMT
String message = STR."Greetings %-12s\{name}.";
String message = FMT."Greetings %-12s\{name}.";
//RAW
StringTemplate st = RAW."Greetings \{name}.";
@ -198,7 +198,7 @@ Integer lastElement = linkedHashSet.getLast(); // 3
linkedHashSet.addFirst(0); //List contains: [0, 1, 2, 3]
linkedHashSet.addLast(4); //List contains: [0, 1, 2, 3, 4]
System.out.println(linkedHashSet.reversed()); //Prints [5, 3, 2, 1, 0]
System.out.println(linkedHashSet.reversed()); //Prints [4, 3, 2, 1, 0]
```
`SequencedMap` 接口继承了 `Map`接口, 提供了在集合两端访问、添加或删除键值对、获取包含 key 的 `SequencedSet`、包含 value 的 `SequencedCollection`、包含 entry键值对`SequencedSet`以及获取集合的反向视图的方法。