Do you *know* that only one process (instance of your program, for example) will be used at a time?
You don't want two instances to try to do the same thing.
Two ideas come to mind here.
- Use a daemon (google for it)
- Instead of naming the directories (in essence using the filename as metadata (one of my pet projects, hehe))- name the directory something constant, and use a config file (YAML) or Storable.
Or even cooler.. maybe Cache::File
If you do something like store meta in config files..
If your dir is
/stuff/JohnSmith_jhon99
Then your meta is
/stuff/JohnSmith_jhon99/.meta