Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaga rasmiy tashrifi yakunlandi, davlatimiz rahbari Toshkent shahriga jo‘nab ketdi.
—
Официальный визит Президента Республики Узбекистан Шавката Мирзиёева в Бельгию завершился, глава нашего государства отбыл в город Ташкент.
#Mirziyoyev#tashrif#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaga rasmiy tashrifi yakunlandi, davlatimiz rahbari Toshkent shahriga jo‘nab ketdi.
—
Официальный визит Президента Республики Узбекистан Шавката Мирзиёева в Бельгию завершился, глава нашего государства отбыл в город Ташкент.
#Mirziyoyev#tashrif#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
Bryussel shahriga rasmiy tashrif doirasida Laken saroyida O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaliklar Qiroli Filipp bilan uchrashuvi bo‘lib o‘tdi.
—
В рамках официального визита в Брюссель во дворце Лакен состоялась встреча Президента Республики Узбекистан Шавката Мирзиёева с Королем бельгийцев Филиппом.
#Mirziyoyev#uchrashuv#Belgiya#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|X
Bryussel shahriga rasmiy tashrif doirasida Laken saroyida O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyevning Belgiyaliklar Qiroli Filipp bilan uchrashuvi bo‘lib o‘tdi.
—
В рамках официального визита в Брюссель во дворце Лакен состоялась встреча Президента Республики Узбекистан Шавката Мирзиёева с Королем бельгийцев Филиппом.
#Mirziyoyev#uchrashuv#Belgiya#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev rasmiy tashrif bilan Bryussel shahriga keldi. Davlatimiz rahbarini Yevropa Ittifoqining Markaziy Osiyo bo‘yicha maxsus vakili Eduards Stiprays va boshqa rasmiy shaxslar kutib oldi.
—
Президент Республики Узбекистан Шавкат Мирзиёев прибыл с официальным визитом в город Брюссель. Главу нашего государства встретили спецпредставитель Европейского Союза по Центральной Азии Эдуардс Стипрайс и другие официальные лица.
#Mirziyoyev#tashrif#YI#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Yevropa kengashi Prezidenti Antoniu Koshta va Yevropa komissiyasi Prezidenti Ursula fon der Lyayenning taklifiga binoan rasmiy tashrif bilan Bryussel shahriga jo‘nab ketdi.
—
Президент Республики Узбекистан Шавкат Мирзиёев по приглашению Президента Европейского совета Антониу Кошты и Президента Европейской комиссии Урсулы фон дер Ляйен отбыл с официальным визитом в город Брюссель.
#Mirziyoyev#tashrif#YI#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev rasmiy tashrif bilan Bryussel shahriga keldi. Davlatimiz rahbarini Yevropa Ittifoqining Markaziy Osiyo bo‘yicha maxsus vakili Eduards Stiprays va boshqa rasmiy shaxslar kutib oldi.
—
Президент Республики Узбекистан Шавкат Мирзиёев прибыл с официальным визитом в город Брюссель. Главу нашего государства встретили спецпредставитель Европейского Союза по Центральной Азии Эдуардс Стипрайс и другие официальные лица.
#Mirziyoyev#tashrif#YI#Belgiya
Prezident.uz|Facebook|Instagram|YouTube|X