eonist / Filewatcher
Licence: mit
Monitoring file system changes in macOS
Stars: ✭ 100
Programming Languages
swift
15916 projects
FileWatcher
A simple file watcher in Swift.
Installation:
- CocoaPods
pod "FileWatcher"
- Carthage
github "eonist/FileWatcher" "master"
- Manual Open
FileWatcherExample.xcodeproj
Example
This will monitor your Desktop for any file changes:
let filewatcher = FileWatcher([NSString(string: "~/Desktop").expandingTildeInPath])
filewatcher.callback = { event in
print("Something happened here: " + event.path)
}
filewatcher.start() // start monitoring
Running FileWatcher on a background thread
The above example will run FileWatcher (ie. its callback function) from the current thread. However, if your callback needs to run for any significatant amount of time (for example when monitoring a folder for photos and you need to run a lenghty image processing algorithm on them), this is rarely a good idea.
If you'd rather have your callback running on a background thread, you can provide your own queue, and FileWatcher will use that (instead of the default current thread / run loop):
filewatcher.queue = DispatchQueue.global()
Notes and documentation:
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].