lacinia 의 resolver 구성에 대해서 좀 더 알아야 (async 혹은 ThreadPoolExecutor) 의 동작을 이해할 수 있을 것 같습니다.
lacinia 에서 resolver 를 구현할 때 value 를 바로 리턴하도록 할 수도 있지만
ResolveResultPromise
를 리턴하게 할 수도 있습니다. [1]
lacinia 에서 이것을 "Asynchronous Field Resolvers" 라고 부릅니다.
resolver 에서 ResolveResultPromise
를 리턴하게 만들 때는 아래와 같은 pattern 을 따릅니다.
(defn resolve-xyz