Это будет интересно ...
Я видел много уроков / примеров кода для создания миниатюр asp.net, но никто не учел проблему параллельного доступа при динамическом создании миниатюрных изображений, когда один или несколько пользователей обращаются к одной и той же странице, когда необходимо создать миниатюру.
Простой случай, у меня есть сайт с изображениями свойств (дома и т. Д.), Изображения хранятся в папке, миниатюры создаются (для галереи), когда кто-то впервые обращается к конкретному предложению, а затем обработчик создает эскизы из Исходно большие изображения, обработчик генерирует каждый эскиз только один раз, а затем использует сгенерированное изображение в дальнейших запросах.
Что произойдет, если два пользователя одновременно получат доступ к этой странице, обработчик может дважды запускаться для одного и того же файла или более, могут возникнуть проблемы с параллелизмом, ошибки открытия файла и т. Д. (Файл должен быть открыт для создания эскиза) .
Обычно один пользователь получает миниатюру, а другие получают пустое поле без изображения, пока они не обновят страницу (так как первый пользователь запустил создание миниатюры)
Итак, вопрос в том, как избежать этой ситуации?