私はドキュメントを読み、プロジェクトReadDirectoryChangesW()
も見ましたが、なぜそれを非同期で呼び出したいのかはどちらも言いません。現在のスレッドがブロックされないことは理解していますが、少なくとも完了ポートを使用する CDirectoryChangeWatcher コードについては、 を呼び出すと、そのスレッドはブロックされます (変更がない場合)。CDirectoryChangeWatcher
GetQueuedCompletionStatus()
したがってReadDirectoryChangesW()
、最初に別のスレッドで同期的に呼び出すと、それがブロックされても気にしないのに、なぜReadDirectoryChangesW()
非同期で呼び出す必要があるのでしょうか?