У меня есть база изображений, которые нужно обработать. Обработка каждого изображения занимает около минуты. Я пытаюсь сделать его многопоточным. У меня проблемы с вводом данных в базу данных в рабочем потоке. По какой-то причине данные не сохраняются.
Вот как выглядит код.
images = Images.query.all()
images_ = []
for image in images:
images_.append(image)
pool = ThreadPool()
pool.map(dostuff, (images_))
pool.close()
pool.join()
def dostuff(image):
# do stuff
image.done = True
db.session.commit()
Есть идеи, что могло случиться? Я также попытался передать сеанс в dostuff(image, session), но это тоже не сработало. Любая помощь приветствуется!






Вы добавили изображение в сеанс?
def dostuff(image):
# do stuff
image.done = True
db.session.add(image)
db.session.commit()