本文已参与「新人创作礼」活动,一起开启掘金创作之路。
方法总结
| 方法 | 描述 | 场景 |
|---|---|---|
| runAsync | 用于开启一个异步线程,传入Runnable没有返回值 | 开启一个异步线程,同时不关注返回值 |
| supplyAsync | 用于开启一个异步线程,传入供给型函数式接口,有返回值 | 开启一个异步线程,同时关注返回结果 |
| thenCompose | 用于连接上一步的执行结果,继续处理,传入一个函数式接口,传入x,返回y | 用于继续处理上一步线程执行的结果(还是上面的线程去执行)关注返回结果 |
| thenComposeAsync | .. | 用于继续处理上一步线程执行的结果(开启新的线程去执行)关注返回结果 |
| thenApply | 对上一步的返回结果做后续处理,传入一个函数式接口,传入x,返回y | 对上一步的返回结果做后续处理(还是上面的线程去执行)关注返回结果 |
| thenApplyAsync | .. | 对上一步的返回结果做后续处理(开启新的线程去执行)关注返回结果 |
| thenAccept | 对上一步的结果做后续处理,传入一个消费型接口,传入x | 对上一步的结果做后续处理(还是上面的线程去执行)不关注返回结果 |
| thenAcceptAsync | .. | 对上一步的结果做后续处理(开启新的线程去执行)不关注返回结果 |
| thenRun | 执行一个任务,传入一个Runnable接口 | 执行一个线程任务(还是上面的线程去执行),没有入参,没有返回值 |
| thenRunAsync | .. | 执行一个线程任务(开启新的线程去执行),没有入参,没有返回值 |
| thenCombine | 用于合并两个线程的返回值,第一个参数就是(第二个线程任务),第二个参数是传入一个函数式接口,传入x,y 返回z | 用于线程任务合并(还是上面的线程去执行),关注返回值 |
| thenCombineAsycn | .. | 用于线程任务合并(开启新的线程去执行),关注返回值 |
| thenAcceptBoth | 用于合并两个线程的返回值,第一个参数就是(第二个线程任务),第二个参数是传入一个函数式接口,传入x,y | 用于线程任务合并(还是上面的线程去执行),不关注返回值 |
| thenAcceptBothAsync | .. | 用于线程任务合并(开启新的线程去执行),不关注返回值 |
| runAfterBoth | 用于合并两个线程的返回值,第一个参数就是(第二个线程任务),第二个参数是传入一个Runnable接口 | 用于线程任务合并(还是上面的线程去执行),没有入参,不关注返回值 |
| runAfterBothAsync | .. | 用于线程任务合并(开启新的线程去执行),没有入参,不关注返回值 |
| applyToEither | 用于处理两个线程那个优先完成,第一个参数就是(第二个线程任务),第二个参数是一个函数式接口,传入x,返回y | 用于处理两个线程那个优先完成就用那个的返回值(还是上面的线程去执行),传入的x就是优先线程返回的结果,关注返回值 |
| applyToEitherAsync | .. | 用于处理两个线程那个优先完成就用那个的返回值(开启新的线程去执行),传入的x就是优先线程返回的结果,关注返回值 |
| acceptEither | 用于处理两个线程那个优先完成,第一个参数就是(第二个线程任务),第二个参数是一个消费型接口,传入x | 用于处理两个线程那个优先完成就用那个的返回值(还是上面的线程去执行),传入的x就是优先线程返回的结果,不关注返回值 |
| acceptEitherAsync | .. | 用于处理两个线程那个优先完成就用那个的返回值(开启新的线程去执行),传入的x就是优先线程返回的结果,不关注返回值 |
| runAfterEither | 用于处理两个线程那个优先完成,第一个参数就是(第二个线程任务),第二个参数是一个Runnable接口 | 用于处理两个线程那个优先完成就用那个的返回值(还是上面的线程去执行),没有入参,不关注返回值 |
| runAfterEitherAsync | .. | 用于处理两个线程那个优先完成就用那个的返回值(开启新的线程去执行),没有入参,不关注返回值 |
| exceptionally | 处理上面运行中的异常,传入一个函数式接口,传入exception, 返回y | 用于处理调用异常的情况, 入参是报错的异常, 关注返回值 |
| handle | 处理正常或异常的情况,传入一个函数式接口,第一个参数是正常结果(如果没异常),第二个参数是异常对象(如果有异常),返回y | 用于处理无论正常和异常都要走的情况(还是上面的线程), 关注返回值 |
| handleAsync | .. | 用于处理无论正常和异常都要走的情况(开启新的线程), 关注返回值 |
| whenComplete | 处理正常或异常的情况,传入一个函数式接口,第一个参数是正常结果(如果没异常),第二个参数是异常对象(如果有异常) | 用于处理无论正常和异常都要走的情况(还是上面的线程), 不关注返回值 |
| whenCompleteAsync | .. | 用于处理无论正常和异常都要走的情况(开启新的线程), 不关注返回值 |
| join | 用于获取返回结果 | 有返回结果 |
若有收获,就点个赞吧