you're missing the point and taking "context switch" literally
with NIO you are still managing the stack, just yourself instead of letting the operating system do it for you
it is still a "context switch", just done in your code instead of the OS
and that's not free (and likely more expensive than saving and restoring a set of registers)