This issue that you reported got me thinking and there is in fact a secondary issue here that was completely overlooked by both of us.
If you open multiple instances of FlashFXP to perform a parallel download of the same same content then FlashFXP should be able to handle this without any issues.
Quote:
[08:34:15] [L] Cannot open file D:\backup\ibdata1
[08:34:15] [L] The process cannot access the file because it is being used by another process.
|
Even though you're using multiple instances of FlashFXP this condition can be avoided.
I've updated the code to create a unique Mutex based on the target path+name just before the file transfer rules are evaluated, this Mutex is then released when the file handle is closed or if the file is skipped.
If a secondary copy of FlashFXP attempts to download the same target then attempting to create the Mutex will fail and we can safely skip the file knowing that another instance is in the process of transferring it.
I also found another issue when performing parallel downloads. If multiple instances attempt to create the same local target folder at the same time then it fails. The code neglected to check the reason for failure, in this case the folder already exists.
I will be including these two changes in my next update.