Just now saw your two responses.
I'm guessing that because you're on Windows, you have some other process vying for the file. Windows is much more restrictive than Linux when it comes to separate processes trying to access the same file.
If that's the case, then yes it is probably a fine solution, especially since you're using the LOCK_NB (non-blocking) flag, as long as you're okay with that file's checksum being skipped if the other process accesses it first. The only thing I would worry about is that possibly the other process might fail for the same reason, unless it, too, incorporates file-locking.