On a project for work, I setup the code for making all of our REST calls to our middle layer with HttpClients created with a using. Turns out that wasn't a good idea.
When you have an async call you'd like to make within a sync-only function, it's tempting to use Task.Result or Task.Wait. However this can lead to performance issues like thread-starvation.
There are times when inside of one function it's important to know the name of the calling function. Here I outline two uses: during logging an unit testing.