Можно попробовать:
Bitmap.InterpolationMode = InterpolationMode.HighQualityBicubic;
и
Bitmap.CompositingQuality = CompositingQuality.HighQuality;
, Который действительно сохраняет качество довольно высоко, но не максимально возможное.
SQLite специально разработан для защиты от этого. С официальной страницы SQLite Transactional :
Все изменения в пределах одного транзакция в SQLite либо происходит полностью или не совсем, даже если акт записи изменения в диск прерывается из-за
- сбоя программы,
- сбоя операционной системы или
- сбоя питания.
Утверждение предыдущего абзаца таково. тщательно проверено в SQLite набор регрессионных тестов с использованием специального испытательный жгут, имитирующий эффекты на файл базы данных сбои операционной системы и питание
Вам также может быть интересна статья SQLite Атомная фиксация в SQLite , если вам нужно знать конкретные детали того, как они защищают от сбоев, подобных приведенному выше.
Горячий журнал создается, когда процесс находится в середине обновления базы данных, а сбой программы или операционной системы или сбой питания препятствуют завершению обновления. Горячие журналы являются исключением. Горячие журналы существуют для восстановления после сбоев и сбоев питания. Если все работает правильно (то есть нет сбоев или сбоев питания), вы никогда не получите горячий журнал.
Худшее, что может случиться, это то, что вам нужно удалить «горячий журнал», оставшийся после сбоя.
Поскольку Sqlite совместим с ACID, отключение питания не должно быть выпуск.
что угодно может произойти при внезапном отключении питания. Однако я бы посоветовал UPS уменьшить любой риск.