Java (2) 썸네일형 리스트형 [Java-concurrent] CompletableFuture 톺아보기 - AsyncSupply static final class AsyncSupply extends ForkJoinTask implements Runnable, AsynchronousCompletionTask { CompletableFuture dep; Supplier ensureLoaded = LockSupport.class; } } /* 주석에 나와있는 것 처럼 '변수 f'에는 현재의 dependents를 갖는다 * 멀티 스레드에서의 안정성을 위해 한 번에 한가지 path로만 확장되고, * 무한재귀를 피하기 위해 다른 path는 밀어낸다 */ final void postComplete() { // 1. 현재 클래스를 참조 CompletableFuture f = this; Completion h; /* 2 * 최초로 참조된 Comp.. [Java-concurrent] CompletableFuture 톺아보기 - OT Async Pool fundamental private static final boolean USE_COMMON_POOL = (ForkJoinPool.getCommonPoolParallelism() > 1); /** * Default executor -- ForkJoinPool.commonPool() unless it cannot * support parallelism. */ private static final Executor ASYNC_POOL = USE_COMMON_POOL ? ForkJoinPool.commonPool() : new ThreadPerTaskExecutor(); static Executor screenExecutor(Executor e) { if (!USE_COMMON_POOL &&.. 이전 1 다음