Render.ru

Лекарство от геморроя: Автобекап без зависания программы

Филипп Писаревский

Активный участник
Рейтинг
18
#1
Не знаю, насколько актуальна тема для вас, господа, но у меня стоит автобекап каждые 5 минут, потому что программа вылетает довольно часто. Для маленьких сцен этот процесс проходит незаметно: все сохраняется за пару секунд. А для сцен от 50 мегабайт начинается лютый ад. Каждые 5 минут программа зависает на минуту. Это невероятно бесит.

Так вот, ловите лекарство. Скрипт будет сохранять файл рядом с оригиналом с приставкой "bk" каждые 5 минут в фоновом режиме. Чтобы запускалось само при старте, надо положить скрипт в scripts/startup в папке с программой где-то в Program Files.

Проверял только у себя на Windows 8.1 x64 и 3ds Max 2015. Если кто может помочь в доведении кода до кондиции, приглашаю принять участие.
 

Вложения

Последнее редактирование:

Fedotov

Знаток
Рейтинг
40
#5
С таким интервалом автосохранения проще просто отключить и перед сложными процедурами вручную сохраняться.
У меня это по дефолту, а перед сложными процедурами не просто сохраняю, а делаю резервный файл (сохранить копию как) не раз попадал. Написать такой скрипт конечно дело хорошее, в качестве тренинга, чтоб скучно не было.
 
Рейтинг
145
#6
Не знаю, насколько актуальна тема для вас, господа, но у меня стоит автобекап каждые 5 минут, потому что программа вылетает довольно часто. Для маленьких сцен этот процесс проходит незаметно: все сохраняется за пару секунд. А для сцен от 50 мегабайт начинается лютый ад. Каждые 5 минут программа зависает на минуту. Это невероятно бесит.

Так вот, ловите лекарство. Скрипт будет сохранять файл рядом с оригиналом с приставкой "bk" каждые 5 минут в фоновом режиме. Чтобы запускалось само при старте, надо положить скрипт в scripts/startup в папке с программой где-то в Program Files.

Проверял только у себя на Windows 8.1 x64 и 3ds Max 2015. Если кто может помочь в доведении кода до кондиции, приглашаю принять участие.
Круто, работает на 3ds Max 2017. Классно ещё, что пишет в ту же папку, где и оригинал. Автосейвы теперь не треплют нервы.
 

Филипп Писаревский

Активный участник
Рейтинг
18
#7
Вот чего еще не кто не писал, так это скрипт для выключения макса ))
Вы, может, чего не поняли, но скрипт фоном файлы сохраняет, а не подвешивает программу на неопределенное время
 

Олег Геннадьевич

Активный участник
Рейтинг
14
#13
Нет, не в фоне. Если сцена тяжёлая, то приходится ждать, когда она сохранится. А описанный здесь принцип очень интересен. Знаю, что в maya тоже есть такие файлы.

Отправлено с моего A0001 через Tapatalk
 

Филипп Писаревский

Активный участник
Рейтинг
18
#14
http://help.autodesk.com/view/MAYAUL/2015/ENU/?guid=Python_Python_and_threading
Теоретически, в maya есть Python Threading, но, как пишут в документации,
Maya API and Maya Command architectures are not thread-safe. Maya commands throw an exception if they are called outside the main thread, and use of the OpenMaya API from threads other than the main one has unforeseen side effects.
Поскольку сохранение - это команда OpenMaya API, то может вылететь. А может и не вылететь, это надо проверять, в общем.
 
Сверху