start() stop() , and join() aren't from this module, but rather from Threading and/or multiprocessing.
start() starts a Thread or Process, and stop() kills it. .join() is what you use in the parent process to block until all Threads/Processes have finished.
So the answer is NO. For that functionality you need something else most likely, threading.RLock() or multiprocessing.RLock() would give you what you want. Err, use threading because watchdog does.
I am considering a streamlining of watchdog for linux only with many fewer options, in an attempt to find stable code for a Webapp that needs to respond to file changes in one directory. If I do it, it may be available or not, depending on my employer, but it will definitely use multiprocessing.
Zak