KDirWatch is not current thread-safe which can cause problems when feeding or deleting directories in a multi-threaded approach. In addition, the class uses a single QFileSystemWatcher instance (fsWatcher) when using the QFSWatch method.
Thus, as a function of which internal method is being used, multi-thread access should be protected with a mutex that can either be a regular class variable or needs to be a static class variable.
Making the KDirWatch instance methods virtual allows to derive KDirWatch in a specialised class which adds e.g. the appropriate mutex, with minimal modification of existing code and without having to burden applications that use the class in a strictly single-threaded approach with mutex'ing overhead.