注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
前回こんな記事を書きました。 Swift 世代の排他制御 http://qiita.com/codelynx/items/0ecd28c8a7da0a0... 前回こんな記事を書きました。 Swift 世代の排他制御 http://qiita.com/codelynx/items/0ecd28c8a7da0a0e42b5 この記事では、以下のような排他制御の書き方を紹介しました。NSLock を使えば、複数のスレッドからクリティカルなデータの同時更新を防げるという話でした。具体的には、NSLock を lock() してから unlock() するまでは、他のスレッドは待たされるので、atomicity が保証できるという話です。しかも、defer 文を使えば、スコープを抜けた時に、確実に実行されるので、途中でいくつもの return 文があるようなパターンでも、実行し忘れがなく、安全という事です。 class MyObject { let lock = NSLock() func update1() { self.lock.lock() def
2016/11/18 リンク