Module: Fontist::Utils::Locking
- Included in:
- SystemIndex, Cache
- Defined in:
- lib/fontist/utils/locking.rb
Instance Method Summary collapse
Instance Method Details
#lock(lock_path) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/fontist/utils/locking.rb', line 4 def lock(lock_path) File.dirname(lock_path).tap do |dir| FileUtils.mkdir_p(dir) unless File.exist?(dir) end f = File.open(lock_path, File::CREAT) f.flock(File::LOCK_EX) yield ensure f.flock(File::LOCK_UN) f.close end |