В таком случае при создании любого объекта, при попытке его использования мы можем получить не до конца сконструированный объект?
В теории да, можно создать не до конца инициализированный объект... через байт-код, если не вызвать его конструктор, но через сам код на java такие приколы сделать не получится.
Double Checking существует уже очень давно, и я думаю не просто так
Работает. После первой проверки, если объект ещё не создан, мы попадаем в блок с синхронизацией, которая гарантированно будет выполняться одновременно только в одном потоке. Те даже если два потока одновременно запросят экземпляр объекта, любой первый кто дошел до синхронизации его создаст и инициализирует, затем положит его в переменную, а у второго потока в переменной уже не будет null, из за чего он пропустит его создание, и просто вернёт уже созданный объект.
Посыл статьи понял, довольно интересное решение проблемы(возьму себе на заметку). Но после прочтения некоторых комментариев, возникло ощущение что в web чуть-ли не с улицы набирают...
Аналогичный подход, только у меня фото/видео по возможности отправляются сразу на сервер(5 хардов в zfs raidz2) через Syncthing, а на сервере есть 2 папочки, одна -- точная копия того, что на телефоне, вторая - архив. И раз в сутки, в полночь, по крону запускается скрипт который переносит из первой папки все, что старше 60 суток во вторую, благодаря Syncthing оно и с телефона удаляется. Второй год - полет нормальный)
Но это что касается личных фото, семейный фото-архив в отдельной папочке(даже на отдельном разделе) и раздается в локалку через DLNA
В теории да, вектор атаки определить проще, имея исходники на руках. Но, исходников тут многовато будет, и они малость устаревшие. Так что, если что-то и найдут, то не критичное, и скорее всего уже исправленное.
Какая там прошивка не смотрел, если честно(хотя после прочтения очень хочется). После этого случая я просто считаю его мертвым. Как кеш работает отлично. Все же самое странное, что после сброса он заработал нормаьно, за пол года не одной ошибки не было) Если снова посыпится, просто отнесу по гарантии и забуду как страшный сон....
У меня пол года назад evo 870 "умер". При обращении к некоторым файлам винда зависала намертво(с 100% временем активности диска и нулевой скоростью), linux выдавал ошибку I/O. Прогнал диск на "битые блоки" и некоторые из них не читались, и не записывались(около пары десятков тысяч). В поисках решения проблемы решил попробовать из Биоса воспользоваться "безопасным стиранием ssd"(думал, не заработает и сдам его по гарантии). Стер... Заработал... Не знаю что это было, но в итоге всунул его в домашний NAS как L2ARC кеш(если тут умрет не так жалко будет). Пока-что работает. Видимо, в тот день была солнечная буря xD
Скажу вам по секрету, у regru есть api, и даже можно dns челлендж пройти(у меня уже как года два работает все, никаких проблем не было)
В таком случае при создании любого объекта, при попытке его использования мы можем получить не до конца сконструированный объект?
В теории да, можно создать не до конца инициализированный объект... через байт-код, если не вызвать его конструктор, но через сам код на java такие приколы сделать не получится.
Double Checking существует уже очень давно, и я думаю не просто так
Работает. После первой проверки, если объект ещё не создан, мы попадаем в блок с синхронизацией, которая гарантированно будет выполняться одновременно только в одном потоке. Те даже если два потока одновременно запросят экземпляр объекта, любой первый кто дошел до синхронизации его создаст и инициализирует, затем положит его в переменную, а у второго потока в переменной уже не будет null, из за чего он пропустит его создание, и просто вернёт уже созданный объект.
Посыл статьи понял, довольно интересное решение проблемы(возьму себе на заметку). Но после прочтения некоторых комментариев, возникло ощущение что в web чуть-ли не с улицы набирают...
Аналогичный подход, только у меня фото/видео по возможности отправляются сразу на сервер(5 хардов в zfs raidz2) через Syncthing, а на сервере есть 2 папочки, одна -- точная копия того, что на телефоне, вторая - архив. И раз в сутки, в полночь, по крону запускается скрипт который переносит из первой папки все, что старше 60 суток во вторую, благодаря Syncthing оно и с телефона удаляется. Второй год - полет нормальный)
Но это что касается личных фото, семейный фото-архив в отдельной папочке(даже на отдельном разделе) и раздается в локалку через DLNA
Pixel 4xl. В целом все ок, но если включен HDR то картинка мерцает(только если через приложение смотреть). Похоже на баг самого приложения YouTube...
В теории да, вектор атаки определить проще, имея исходники на руках. Но, исходников тут многовато будет, и они малость устаревшие. Так что, если что-то и найдут, то не критичное, и скорее всего уже исправленное.
Какая там прошивка не смотрел, если честно(хотя после прочтения очень хочется). После этого случая я просто считаю его мертвым. Как кеш работает отлично. Все же самое странное, что после сброса он заработал нормаьно, за пол года не одной ошибки не было)
Если снова посыпится, просто отнесу по гарантии и забуду как страшный сон....
У меня пол года назад evo 870 "умер". При обращении к некоторым файлам винда зависала намертво(с 100% временем активности диска и нулевой скоростью), linux выдавал ошибку I/O. Прогнал диск на "битые блоки" и некоторые из них не читались, и не записывались(около пары десятков тысяч). В поисках решения проблемы решил попробовать из Биоса воспользоваться "безопасным стиранием ssd"(думал, не заработает и сдам его по гарантии). Стер... Заработал... Не знаю что это было, но в итоге всунул его в домашний NAS как L2ARC кеш(если тут умрет не так жалко будет). Пока-что работает. Видимо, в тот день была солнечная буря xD