How taxing would it be on a system to check for a file's existence every 2 seconds on a timer? Is there a better alternative?

A little background, possible unecessary, is that I'm creating a "lock" file when my application opens a file, so that someone else on the network cannot open that same file. The application opens a read-only version of the file, and checks for when the 'lock' file no longer exists, so that the user can then open the file when the other user is finished. It's an 'own'/'disown' system. Works well so far, but I'm wondering if there's a better way.