Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
3️⃣ months to go for #IPL 2023 on #Vision11💯
Taiyyari kar rahe ho na for India ka Tyohaar? 👀
Iss baar hoga ultimate dhamaka toh stay tuned on @Vision11official💥
aur practice ke liye download app now!👇
https://vision11.in/APK/vision11.apk
Kaha the na Jeetne ka Vision ho to jeet sakte ho on #Vision11😎
Rudra Pratap of Saharanpur won his dream bike, Royal Enfield, from the #IPL leaderboard 🥳
Toh, when you are starting with Vision11💪
.
.
.
Download App👇
https://vision11.in/APK/vision11.apk
Mega Contest for the Best on #Vision11! 🔥
Aagya hai #IPL India ka Tyohaar - ab dikhao #Vision as it's Game On! 💪
Play the Leaderboard contest for IPL & win big! 💰
Download #Vision11 now!
https://vision11.in/APK/vision11.apk
The moment you all have been waiting for! ⌛️
Welcome the Warriors for India ka Tyohaar! 🔥
Fasten your seat belts for a crazy #IPL journey with #Vision11 & #CSK
🤜🤛
Ab aayega maza!
Download #Vision11 now!
https://vision11.in/APK/vision11.apk
Sirf Meh kyu?
Khelo sabke sath only on #Vision11!
Kyuki Iski Jhalak, Sabse Alag…
Download the App & make your team now.
https://vision11.in/APK/vision11.apk
#IskiJhalakSabseAlag#Vision11#Ipl#Cricket#Fantasy
#Polonia🇵🇱
#Presidenziali
Rafał #Trzaskowski, 53 anni e originario della Capitale, è sindaco di Varsavia dal 2018. Formatosi all'Università di Varsavia e poi al Collegio d'Europa, è stato ministro, deputato ed europarlamentare; si candidò alle elezioni presidenziali anche nel 2020, dove ottenne il 49% contro il Presidente uscente Andrzej #Duda (#PiS|ECR), che venne rieletto col 51%.
È sostenuto dalla Coalizione Civica (#KO), che comprende: Piattaforma Civica (#PO|PPE), Moderna (#Nowoczesna|RE), Iniziativa Polacca (#iPL|PPE) e dai Verdi (#Zieloni|G/EFA).
@TuttoElezioni