Improve thread scalability of ThreadDelegatedContext.

This was causing notable contention in DelegatedExecutorServices, since each worker thread inherits
the same ThreadDelegatedContext, there would be a stampede to acquire the context lock when tasks start.

It was not noticeable on large tasks, but very noticeable on small tasks.