laziness, impatience, and hubris | |
PerlMonks |
Re^3: Generate a unique IDby dHarry (Abbot) |
on Nov 15, 2010 at 16:42 UTC ( [id://871504]=note: print w/replies, xml ) | Need Help?? |
that prevent one copy of the program picking up the wrong files I solved this once using "semaphore files", if a copy of a program picks up a file it checks if the semaphore is there. If it is, it skips the file, if not it creates one. After processing the file it is removed/moved to another directory and the semaphore file deleted. You need some bookkeeping to make it safe. It's not clear to me why you need the "uniqueness" at all? If you don't want the slightest chance of a collision I think only the "lastId + 1" remains. You need some sort of locking mechanism of course to control access to the value, e.g. prevent a dirty read. Both timestamps and UUID-like things are not 100% safe. On the other hand, reading through UUID, I would say the chance is probably too small to bother. Cheers Harry
In Section
Seekers of Perl Wisdom
|
|