Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
🦖🟢 Los Athletics han extendido una oferta al actual Novato del Año de la Liga Americana, Nick Kurtz, para un contrato a largo plazo, informa Joel Sherman.
"No hay noticias" sobre la posibilidad de que se llegue a un acuerdo, escribió Sherman en X. Kurtz ha dicho que está "abierto e interesado" en la posibilidad, informó Tyler Kepner de The Athletic.
Un movimiento así sería enorme ya que los A's ya han asegurado a Brent Rooker, Lawrence Butler, Tyler Soderstrom y Jacob Wilson con extensiones a largo plazo que compraron múltiples años elegibles para arbitraje de cada jugador. La propiedad ha mostrado interés en financiar la plantilla para el éxito desde que John Fisher sacó al equipo de Oakland con planes de trasladarse a Las Vegas, y actualmente se encuentran en medio de una estancia prevista de 3 años en West Sacramento.
Kurtz bateó .290 con 36 jonrones, 86 carreras impulsadas y un OPS de 1.002 el año pasado. Fue clasificado por MLB Network como el 23º mejor jugador de béisbol en la actualidad.
#️⃣#Athletics#Kurtz
🗞 | t.me/MLB_Daily
🦖🟢 Los A's están firmando una extensión de contrato de 7 años por 70 millones con Jacob Wilson, según múltiples informes. Wilson fue el subcampeón del Rookie del Año de la Liga Americana en 2025.
#️⃣#Athletics#JaWilson
🗞 | t.me/MLB_Daily
🦖🤝 Según informa Jon Heyman, insider de MLB Network, los A's y el lanzador derecho Aaron Civale han llegado a un acuerdo de contrato por un año.
#️⃣#Athletics#Civale
🗞 | t.me/MLB_Daily
🦖🟢 Según múltiples informes, incluido el de Mark Feinsand de MLB.com, el atleta de béisbol Tyler Soderstrom ha acordado una extensión de contrato de 7 años y 86 millones con una opción de club para un octavo año.
#️⃣#Athletics#Soderstrom
🗞 | t.me/MLB_Daily
🦖🧢 Los Athletics y el lanzador derecho Mark Leiter Jr. acuerdan un trato, según múltiples informes, incluido el insider de MLB Network Jon Heyman.
#️⃣#Athletics#LeiterJr
🗞 | t.me/MLB_Daily
World Athletics launches MOWA, a virtual 3D sports museum - #Sports#World#Athletics#3D#Museum - https://runningmagazine.ca/the-scene/world-athletics-launches-mowa-a-virtual-3d-sports-museum/👌 Join @OnlineEducation10
За сутки до конца апреля непринужденно забежали с командой #runandbite дистанцию 10-го юбилейного Московского полумарафона.
Это было здорово, продолжаем набор формы!
#спорт#здоровье#развитие#триатлон#плавание#велоспорт#бег#атлетика#марафон#московскиймарафон
#Москва#любовь
#runandbite#runandbiteteam#sport#health#development#athletics#running#marathon#triathlon#swimming#cycling#running#Moscow#support#love