5 : F 8 O ! 7. ! 8 = E @ > = 8 7 0 F 8 O; 0 A A 8 G 5 A : 8 5 7 0 4 0 G 8 A 8 = E @ > = 8 7 0 F 8 8...

Post on 08-Feb-2021

8 views 0 download

transcript

  • ·

    ·

    ·

    ·

  • ·

    ·

    ·

    ·

    ·

  • ·

    ·

    ·

    http://en.wikipedia.org/wiki/Monitor_(synchronization)

  • ·

  • ·

    ·

    ·

  • ·

    ·

    ·

    ·

    ·

    http://mailinator.blogspot.com/2009/06/beautiful-race-condition.htmlhttp://brooker.co.za/blog/2012/11/13/increment.htmlhttp://locklessinc.com/articles/mutex_cv_futex/http://developers.memsql.com/blog/common-pitfalls-in-writing-lock-free-algorithms/http://clojure.org/state

  • ·

    ·

    http://research.microsoft.com/pubs/74063/beautiful.pdfhttp://media.pragprog.com/titles/jaerlang/Concurrent.pdf

    Лекция №7. СинхронизацияПроблема синхронизацииПример условий гонок: i++Классические задачи синхронизацииНаивное решениеАлгоритмы программной синхронизацииАппаратные инструкции синхронизацииTry-and-set lock (TSL)Compare-and-swap (CAS)Другие аппаратные инструкцииСистемные механизмы синхронизацииСпинлокСемафорыМьютекс (mutex)RW lockПеременные условия и мониторыИнтерфейс синхронизацииПроблемы синхронизацииСпособы предотвращения тупиковых ситуацийНеблокирующая синхронизацияНичего общего (shared-nothing)CSPПрограммная транзакционная памятьЛитература