I am new to the async feature provided in the .NET framework
so in my understanding the benefit provided by the async keyword is that when thread call an async method, it can return in the await point and resume the run properly.
my question is after it return from that point, what is the thread doing ? can it be used to run other task items in Thread pool, if so, there must be still context switches ? if not, why not just spin there ?
===== so there will be other threads to take over the not finished part of the async function, how does this context switch happen, like where are those states stored? and how does another thread take those states