176176
1771772\) 如果不能修改使用` CompletableFuture ` 的代码(如其它库返回的` CF ` )
178178
179- 使用[ ` CffuFactory.toCffu(CompletionStage) ` 方法] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/CffuFactory.html#toCffu(java.util.concurrent.CompletionStage) ) ,将` CompletableFuture ` 或` CompletionStage ` 转换成` Cffu ` 类型。
179+ 使用[ ` CffuFactory.toCffu(CompletionStage) ` 方法] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/CffuFactory.html#toCffu(java.util.concurrent.CompletionStage) ) ,将` CompletableFuture ` 或` CompletionStage ` 转换成` Cffu ` 类型。
180180
181181### 1.3 库依赖(包含` CompletableFutureUtils ` 工具类)
182182
186186 <dependency >
187187 <groupId >io.foldright</groupId >
188188 <artifactId >cffu</artifactId >
189- <version >1.0.3 </version >
189+ <version >1.1.0 </version >
190190 </dependency >
191191 ```
192192- For ` Gradle ` projects:
193193
194194 Gradle Kotlin DSL
195195 ``` groovy
196- implementation("io.foldright:cffu:1.0.3 ")
196+ implementation("io.foldright:cffu:1.1.0 ")
197197 ```
198198 Gradle Groovy DSL
199199 ``` groovy
200- implementation 'io.foldright:cffu:1.0.3 '
200+ implementation 'io.foldright:cffu:1.1.0 '
201201 ```
202202
203203> ` cffu ` 也支持` Kotlin ` 扩展方法的使用方式,参见[ ` cffu-kotlin/README.md ` ] ( cffu-kotlin/README.md ) ;使用方式的对比示例参见[ ` docs/usage-mode-demo.md ` ] ( docs/usage-mode-demo.md ) 。
@@ -544,7 +544,7 @@ public class MultipleActionsDemo {
544544
545545应该只处理当前业务自己清楚明确能恢复的具体异常,由外层处理其它的异常;避免掩盖Bug或是错误地处理了自己不能恢复的异常。
546546
547- ` cffu ` 提供了相应的[ ` catching* ` 方法] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/CompletableFutureUtils.html#catching(C,java.lang.Class,java.util.function.Function) ) ,支持指定要处理异常类型;相比` CF#exceptionally ` 方法新加了一个异常类型参数,使用方式类似,不附代码示例。
547+ ` cffu ` 提供了相应的[ ` catching* ` 方法] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/CompletableFutureUtils.html#catching(C,java.lang.Class,java.util.function.Function) ) ,支持指定要处理异常类型;相比` CF#exceptionally ` 方法新加了一个异常类型参数,使用方式类似,不附代码示例。
548548
549549### 2.6 ` Backport ` 支持` Java 8 `
550550
@@ -571,18 +571,18 @@ public class MultipleActionsDemo {
571571
572572` cffu ` 库提供了超时执行安全的新实现方法:
573573
574- - [ ` Cffu#orTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/Cffu.html#orTimeout(long,java.util.concurrent.TimeUnit) )
575- / [ ` Cffu#completeOnTimeoutTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/Cffu.html#completeOnTimeout(java.lang.Object,long,java.util.concurrent.TimeUnit) )
576- - [ ` CFU#cffuOrTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/CompletableFutureUtils.html#cffuOrTimeout(C,long,java.util.concurrent.TimeUnit) )
577- / [ ` CFU#cffuCompleteOnTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/CompletableFutureUtils.html#cffuCompleteOnTimeout(C,T,long,java.util.concurrent.TimeUnit) )
574+ - [ ` Cffu#orTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/Cffu.html#orTimeout(long,java.util.concurrent.TimeUnit) )
575+ / [ ` Cffu#completeOnTimeoutTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/Cffu.html#completeOnTimeout(java.lang.Object,long,java.util.concurrent.TimeUnit) )
576+ - [ ` CFU#cffuOrTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/CompletableFutureUtils.html#cffuOrTimeout(C,long,java.util.concurrent.TimeUnit) )
577+ / [ ` CFU#cffuCompleteOnTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/CompletableFutureUtils.html#cffuCompleteOnTimeout(C,T,long,java.util.concurrent.TimeUnit) )
578578
579579保证业务逻辑不会在` CF ` 的单线程` ScheduledThreadPoolExecutor ` 中执行。
580580
581581更多说明参见:
582582
583583- 演示问题的[ ` DelayDysfunctionDemo.java ` ] ( https://github.com/foldright/cffu/blob/main/cffu-core/src/test/java/io/foldright/demo/CfDelayDysfunctionDemo.java )
584- - ` cffu backport ` 方法的` JavaDoc ` : [ ` CFU#orTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/CompletableFutureUtils.html#orTimeout(C,long,java.util.concurrent.TimeUnit) )
585- / [ ` CFU#completeOnTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.0.3 /io/foldright/cffu/CompletableFutureUtils.html#completeOnTimeout(C,T,long,java.util.concurrent.TimeUnit) )
584+ - ` cffu backport ` 方法的` JavaDoc ` : [ ` CFU#orTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/CompletableFutureUtils.html#orTimeout(C,long,java.util.concurrent.TimeUnit) )
585+ / [ ` CFU#completeOnTimeout() ` ] ( https://foldright.io/api-docs/cffu/1.1.0 /io/foldright/cffu/CompletableFutureUtils.html#completeOnTimeout(C,T,long,java.util.concurrent.TimeUnit) )
586586
587587### 2.8 支持超时的` join ` 方法
588588
@@ -637,18 +637,18 @@ public class MultipleActionsDemo {
637637 <dependency >
638638 <groupId >io.foldright</groupId >
639639 <artifactId >cffu</artifactId >
640- <version >1.0.3 </version >
640+ <version >1.1.0 </version >
641641 </dependency >
642642 ```
643643 - For `Gradle` projects:
644644
645645 Gradle Kotlin DSL
646646 ```groovy
647- implementation("io.foldright:cffu:1.0.3 ")
647+ implementation("io.foldright:cffu:1.1.0 ")
648648 ```
649649 Gradle Groovy DSL
650650 ```groovy
651- implementation 'io.foldright:cffu:1.0.3 '
651+ implementation 'io.foldright:cffu:1.1.0 '
652652 ```
653653- [📌 `TransmittableThreadLocal(TTL)`](https://github.com/alibaba/transmittable-thread-local)的[`cffu executor wrapper SPI`实现](cffu-ttl-executor-wrapper):
654654 - For `Maven` projects:
@@ -657,19 +657,19 @@ public class MultipleActionsDemo {
657657 <dependency >
658658 <groupId >io.foldright</groupId >
659659 <artifactId >cffu-ttl-executor-wrapper</artifactId >
660- <version >1.0.3 </version >
660+ <version >1.1.0 </version >
661661 <scope >runtime</scope >
662662 </dependency >
663663 ```
664664 - For `Gradle` projects:
665665
666666 Gradle Kotlin DSL
667667 ```groovy
668- runtimeOnly("io.foldright:cffu-ttl-executor-wrapper:1.0.3 ")
668+ runtimeOnly("io.foldright:cffu-ttl-executor-wrapper:1.1.0 ")
669669 ```
670670 Gradle Groovy DSL
671671 ```groovy
672- runtimeOnly 'io.foldright:cffu-ttl-executor-wrapper:1.0.3 '
672+ runtimeOnly 'io.foldright:cffu-ttl-executor-wrapper:1.1.0 '
673673 ```
674674- `cffu bom`:
675675 - For `Maven` projects:
@@ -678,7 +678,7 @@ public class MultipleActionsDemo {
678678 <dependency >
679679 <groupId >io.foldright</groupId >
680680 <artifactId >cffu-bom</artifactId >
681- <version >1.0.3 </version >
681+ <version >1.1.0 </version >
682682 <type >pom</type >
683683 <scope >import</scope >
684684 </dependency >
@@ -687,11 +687,11 @@ public class MultipleActionsDemo {
687687
688688 Gradle Kotlin DSL
689689 ```groovy
690- implementation(platform("io.foldright:cffu-bom:1.0.3 "))
690+ implementation(platform("io.foldright:cffu-bom:1.1.0 "))
691691 ```
692692 Gradle Groovy DSL
693693 ```groovy
694- implementation platform('io.foldright:cffu-bom:1.0.3 ')
694+ implementation platform('io.foldright:cffu-bom:1.1.0 ')
695695 ```
696696
697697# 📚 更多资料
0 commit comments