Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
👁🗨 Настольная игра «Zero» обязательно понравится:
– Новичкам, потому что у неё лёгкие правила, которые можно объяснить за пару минут, и быстрые партии!
– Любителям компактных карточных игр, ведь в неё можно сыграть практически в любом месте, а ещё она занимает совсем мало места на полочке!
– Фанатам необычных игр на сбор сетов, ведь ваша задача не только собрать особую комбинацию, но и не дать соперникам нужную карточку для их комбинации!
✅ «Zero» ждёт вас на нашем сайте: https://vk.cc/clanyE.
На Ozon: https://vk.cc/claHEq.
На Wildberries: https://vk.cc/claHGY.
#ЗвездаНастольныеИгры#Zero#ЗвездаУжеВПродаже
🅾 Доброе утро, друзья! Понедельник — наше любимое время анонсов. И мы рады сообщить, что игра «Zero» Райнера Книции сегодня поступила в продажу!
🍩 «Zero» — это быстрая карточная игра для небольшой компании до 5 человек, которая является переизданием игры «Zero Down» 2011 года. В ней задача каждого игрока — набрать как можно меньше очков. Каждый раунд игроки получают по 9 карточек на руку, а на стол выкладывается ещё 5. В свой ход можно обменять одну карточку с руки на одну карточку со стола или спасовать. При этом каждый игрок стремится собрать раньше соперников особую комбинацию «Зеро», которая принесёт 0 очков. Если комбинация «Зеро» собрана, раунд немедленно заканчивается, и все игроки, кроме счастливчика с «Зеро», подсчитывают полученные очки. Раунд также заканчивается после второго паса, и тогда подсчёта очков не избежать никому. Партия продлится столько раундов, сколько участников за столом. Победителем станет тот, кто наберёт наименьшее количество очков!
#ЗвездаНастольныеИгры#Zero#ЗвездаУжеВПродаже
🧮📝 Друзья, началась последняя рабочая неделя этого года — время подводить итоги и строить планы на будущее. В самое ближайшее время мы поделимся ими с вами. А пока ловите небольшой анонс уходящего года! Мы издадим на русском языке новую крутую игру от Райнера Книции — «Zero»!
🅾 Это несложная карточная игра, в которую могут сыграть от 2 до 5 человек. Игровой процесс строится на обмене карточек со своей руки с карточками, лежащими на столе. Ваша задача — набрать как можно меньше очков. Игра длится столько раундов, сколько участников в партии. Каждый раунд игроки считают полученные очки, а победитель определяется по итоговой сумме. У кого очков меньше, тот и чемпион!
🌱 «Зеро» уже очень скоро отправится в печать, так что выход игры не за горами! Все подробности обязательно расскажем в следующих публикациях. Следите за нашими новостями! 😉
#ЗвездаНастольныеИгры#Zero#ЗвездаАнонс
ТВЕРЬ 30.05
Семинар ZERO ALCO
SPIRITS AND COCKTAILS при поддержке первых и пока единственный б/а спиритов DRINKSOME
Время: 13:00-15:00
Место: бар FunDuck ( адрес итак все знаете)
Продолжаем встречаться и обсуждать безалкогольную тему и другие закономерные тренды.
Давно не встречались в Твери в таком формате, так что нам есть много о чем поговорить и обсудить!
Попробуем 4 безалкогольных спирита DRINKSOME и коктейли на его основе( если ещё не пробовали), обсудим б/а тему, поделюсь своим и международным опытом и поговорим в формате вопрос-ответ!
Жду вас во вторник (30.05) в баре FunDuck.
Просьба записаться в комментарии к посту - достаточно цифрой указать кол-во человек, кто прийдет на семинар с вами ( если один, то 1) , чтобы мы смогли подготовить бар и всем было видно, слышно и вкусно 🤗.
До скорой встречи!
#безалкогольныеспириты#безалкогольныекоктейли #0%vol #zero