async awaitでキレイなコードが書けないと辛い気持ちになってたところ、zone.jsを使ったらいろいろと解決できそうなことが分かったJavaScriptNode.jsTypeScriptAngular2Zone.JS zone.jsとは zone.jsとは、Angular2で使われているユーティリティーです。zone.jsを使うことで、非同期のミドルウェアを簡単に作ることができます。 非同期処理の問題点 Javaの同期処理では、ThreadLocalを利用することで、スレッドに紐づくコンテキストデータを引き継ぐことができました。 しかし、非同期処理ではThreadは再利用されるため、Threadにコンテキストデータを保持することはできません。 例えば、下記の async await を利用した非同期処理のコードは、3回スレッドが切り替わります。 main('<0001>'); ma