Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
Делим 50 млн$ от Mantra
👍 Давненько отрабатываем различные активности от этого L1-блокчейна (всё в тестнете, поэтому бесплатно), награда – 50 млн $OM (49,5 млн$), скипать такой жирнейший пул вовсе не советую!
🥺Что нужно сделать?
🔵 Создаем аккаунт в Leap Wallet(полезно будет перенести сидку из Keplr) + добавляем сеть MANTRA
🔵 Теперь топаем в их дискорд и запрашиваем тестовые $OM в ветке #hongbai-faucet
🔵 В самом кошельке жмём на Stake и отправляем 1 $OM любому валидатору
🔵 В конце на 👉сайте забираем 8,8 KARMA
Простая и быстрая активность, даже новичкам советую залететь, проект очень перспективный.
▪️Crypto Time
Уверенный WORK: лайтовый тестнетик с пулом 60М$+🏄♂️
ℹ️Mantra — L1-решение, которое запускает собственный L1-чейн.
Парочку месяцев подряд мы проходили первую фазу тестнета (задания на Galxe), сейчас же был сделан анонсвторой части: тут нам нужно будет активничать в тестовой сети Mantra Hongbai Testnet, пул наград –50 млн $OM (~60 млн$, токен на Binance торгуется).
🍟Активность абсолютно фри:
1️⃣ Устанавливаем Leap Wallet, в правом верхнем углу кликаем на лого Cosmos и добавляем тестовую сеть Mantra
2️⃣ Топаем на 👉сайтик и коннектим наш Leap
3️⃣ Теперь проходим проверку на бота в 🦀дискорде, в ветке #general оставляем заявку на кран
4️⃣ Перед нами должна появиться ветка #hongbai-faucet, там вводим команду /request + ваш OM-адрес и получаем 0,2 $OM
5️⃣ Делаем такой запрос 5 раз, чтобы на балансе был 1 $OM
6️⃣ Теперь идём в Leap и нажимаем на Stake (2 раза), выбираем любого валидатора и вписываем 1 $OM
7️⃣ В итоге нам дадут 5 поинтов KARMA здесь
▪️Crypto Time