winapi에서 나오는 비동기 입출력 있잖아요.

 오버랩트 구조체 이용해서 하는거...

 그건 원리가 무엇인가요?? 스레드를 이용한 것은 아니라고 하는데 어떻게 다른 작업을 하면서 동시에 입출력이 이루어지는지???