jkorous marked 9 inline comments as done. jkorous added a comment. Thanks for taking a look Kadir! After yesterday's discussion with Dmitri I removed all those busy waits. Seems like the code is not much more complex now. I am going to update the diff and off to fixing the tests.
================ Comment at: clang/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp:211 + // ... inotify-originated events processing ever after. + while (true) { + bool GotEvent = false; ---------------- kadircet wrote: > kadircet wrote: > > `while (!Stop)` ? > why the loop always tries to empty the queue? what would be broken if we > simply stopped if `Stop` was set? > > Also if that is important current implementation doesn't seem to be achiving > that, since some events can be pushed to the queue after while loop exits. I changed the design - stopping condition for this loop is now finding `WatcherGotInvalidated` in the queue itself. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D58418/new/ https://reviews.llvm.org/D58418 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits