Our Context abstraction spawns threads on demand. At first it seemed using a pool would not be possible without deadlocks, but if the threadpool is work-stealing and yields on async pending then it should work. This will address a memory issue for WASM targets