1. 4096바이트로 chunk 버퍼를 잡아놓은 후 다 사용하면 삭제하고 다시 만드는 이유가 뭔가요?
그냥 writePos를 0으로 옮기는 등 초기화하여 사용하면 되지 않나요?
2. ThreadLocal로 지정해 놓은 변수들은 getqueuedcompletionstatus로 임의의 스레드가 깨어났을 경우에도 깨어나기 전까지 저장해놓은 상태가 계속 유지되나요?
예를 들어 스레드 1에서 sendbufferchunk에서 100바이트 사용했다면 Dispatch하여 getqueuedcompletionstatus에서 깨어났을 때
여전히 sendbufferchunk가 100바이트를 사용한 상태를 유지하나요? 스레드 내에서는 일종의 전역변수처럼 사용되는거 같습니다.