I have a situation where it is possible that two threads may try to access the same file. I am thinking about putting the filename in an arraylist when it is being accessed and then removing the filename when the process is finished. But now I have two threads using the same arraylist. I thought about using a SyncLock on the arraylist before I look to see if the filename is in there, but I've read that is a dangerous habit. Anybody have any thoughts?