并发编程
程序员赖子
这个作者很懒,什么都没留下…
展开
-
并发编程——Future
Future 调用get()阻塞等待结果返回 public class TestFuture { public static class CountTask implements Callable { @Override public Object call() throws Exception { Long sum = 0L; for (int i = 0; i < 10; i++) { .原创 2021-03-27 16:31:07 · 80 阅读 · 0 评论 -
并发编程——CompletableFuture
public class TestCompletableFuture { /** * supplyAsync 用于提交并开启一个异步任务 * thenCompose 用于连接两个异步任务 * thenCombine 用于合并两个异步任务 */ public static void main(String[] args) { CompletableFuture future = CompletableFuture.supplyA原创 2021-03-27 17:40:40 · 68 阅读 · 0 评论 -
并发编程——线程生命周期
NEW RUNNABLE BLOCKED WAITING TIMED WAITING TERMINATE 线程生命周期图原创 2021-03-27 11:06:06 · 58 阅读 · 0 评论 -
Java并发编程
竞态条件 在多线程环境下,getNext是否会返回唯一的值,要取决于运行时对线程中操作的交替执行方式。 public class RaceCondition { private int value; public int getNext() { return value++; } } 注:由于运行时可能将多个线程之间的操作交替执行,因此这两个线程可能同时执行读操作,从而使得...原创 2020-01-15 19:12:30 · 187 阅读 · 0 评论