Build Runner: Implement File System Watching on Windows
andrewrk opened this issue · comments
Extracted from #20580.
Most of the file system watching mechanism is abstracted across operating systems, however, the parts that deal with receiving events from file system changes require OS-specific implementations.
Line 324 in 1d20ff1
This issue is for the Windows implementation.
Probably the first thing to try will be using the FindFirstChangeNotificationW API. This should fit nicely into the existing abstraction because the Linux implementation is also based on processing events for directories.
WaitForMultipleObjects
is famously limited to only 64 objects. I think that an initial version having this limitation would be fine, but then more advanced techniques will be needed to overcome this limitation, such as https://devblogs.microsoft.com/oldnewthing/20220406-00/?p=106434
Related: