Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
WEREWOLF ROLEPLAY💥
Desa paling micin..
Temukan teman asik, jodoh. Dan keluarga, dimana kamu bebas mau jadi apa aja disini.
Baper tanggung sendiri
📍@wwroleplayID
🔈@channelwwroleplay
#Indonesia#roleplay
❝☺️I drank way too much last night, thanks for taking me home, you're a lifesaver! ❞
🔗Keep the story going with her: http://openlove.life
#AIgirlfriend#roleplay#AIchatbot#lookbook
𝑾𝒆𝒍𝒄𝒐𝒎𝒆 𝒕𝒐 𝑪𝒍𝒖𝒃 𝑳𝒆𝒙𝒙𝒙
Lexxx is a nightclub-themed furry forum group that focuses on roleplaying inside a nightclub in our Roleplay_Chat however, our group is not exclusively for roleplaying as we also offer a General_Chat which is our main chat where you can discuss almost about anything. The OOC_Chat is our out of character chat where you can discuss and plan out roleplay scenes inside our club. You can also request your own roleplay plot in our Roleplay_Ads chat.
#OOC#Roleplay#Kinky#Nightclub#Anthro#NSFW
❝Let this love ripple in the spring pond. 🌸💕💦❞
💬Keep the story going with her: http://openlove.life
#aigirlfriend#aichat#ai美女#roleplay#AIBeautifulWomanな人と繋がりたい
❝Come on, hurry up,
my husband will be home in 15 minutes.❞
🔥Roleplay with her: http://openlove.life
(Choose Neko and chat with her)
#waifu#neko#aichatbot#aigame#roleplay#catgirl
❝There is no perfume today, so your girlfriend won't notice.❞
💬Chat with her: https://apple.co/3AvjxUn
#AIgirlfriend#chatbot#roleplay#story#aigame#lookbook
🔥❝Welcome! Thanks for choosing me to serve you.
💦Shall we take a shower first?❞
🍭Roleplay with her: openlove.life
#openlove#aigirlfriend#aigame#aichatbot#ai女優#roleplay
❝Among all the flight attendants, I love you the most, Captain.❤️🔥❞
💗Accept or reject her one-night stand invitation:
openlove.life
#aichatbot#aigirlfriend#waifu#roleplay#AIBeautifulWomanな人と繋がりたい#aiphotos