Concept for async functions
Currently using the default context, the thread id is used to identify the context in which a trace point is created. In an async context, the thread may change which executes an async function which will render further trace analysis close to impossible.