Только это не совсем стандартное использование синхронизации через файлы
Не факт, что будет всегда работать как нужно.
Попробуй вот так:
Маска на случай если в папке хлам лишний есть. Организуй после получения пути до файла его перенос в другую папку и там уже с ним дальше работай в текущем потоке, это чтобы случайно не оказалось, что 2 потока одновременно работают с одним файлом, по идее если 2 выберут случайно один и тот же файл, то одновременно они его переместить не смогут (можешь подстраховаться задавая файлу при перемещении рандомное имя символов из 30-50) и 1 уйдёт в ошибку и после ошибки опять на выбор пути до файла.
В будущем было бы не плохо, чтобы ты подгружал изображения на форум вот так:
Это чтобы нам было удобнее отвечать. Если не знаешь удобный софт для этого, спроси у меня в личке, я такой знаю.