Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
Гугл проиграл аппеляцию против Epic Games, решение остается прежним — приложениям в гуглплей должно быть разрешено делать маркетплейсы и свой биллинг. Помню, многие поначалу сомневались, что Epic сможет добиться в судах хоть чего-то, а #battleroyale все идет ...
https://www.bloomberg.com/news/articles/2025-07-31/epic-games-win-over-google-in-fortnite-fight-upheld-on-appeal
Продолжается #battleroyale: напомню, недавно Epic отправили на публикацию Fortnite в американский аппстор. Ну, Эппл, разумеется, отклонил заявку. Теперь ответный шаг — Epic заявили, что Fortnite для iOS будет отключен по всему миру, пока эппл не передумает.
Думаю, для эппл довольно неожиданно, что в эту игру могут играть двое, хотя бой, конечно, неравный.
https://www.theverge.com/news/668232/fortnite-ios-unavailable-worldwide-apple-epic
#battleroyale Эпик говорит, что Эппл удалил их разработческий аккаунт, без него они не могут сделать ни одной программы для Mac или iOS. И, как следствие, не смогут запустить свой стор.
https://www.theverge.com/2024/3/6/24092158/epic-apple-developer-account-terminated-digital-markets-act-alternative-ios-app-store
Epic получили от эппла письмо, где говорится, что СЕО Эпика в Твиттере публично ругает Эппл. Поэтому аккаунт отозван, и вообще, эпик участвует в «глобальных усилиях по подрыву» правил Эппл.
https://9to5mac.com/2024/03/06/epic-games-dev-account-dead/
🎯 PUBG Mobile – ADC GameFest 2025
O‘z mahoratingizni ko‘rsatib, ADC GameFest 2025 chempioni bo‘lishga tayyormisiz? 🔥 PUBG Mobile turniri sizni kutmoqda!
🎮 Jang maydoniga tushish va g‘alaba qozonish vaqti keldi! Eng kuchli o‘yinchilar finalga chiqadi va sovrinli o‘rinlar uchun kurashadi!
💰 Ishtirok badali – 20,000 so‘m
Ro‘yxatdan o‘tish: 📞 742261078
Telegram:
📺@admofadc
O‘yinchilarga omad! Joylar cheklangan – shoshiling!
📱Telegram | 📱Instagram | 📱Facebook | 📱TikTok | 📱YouTube | 📱Website
#ADCGameFest#PUBGMobile#ADC2025#BattleRoyale#Esports