タグ

ロックに関するrti7743のブックマーク (2)

  • 楓 software: マルチスレッドとアトミック/インターロック

    « クラスメンバ渡しと引数渡し | メイン | SQLite の VFS » 2008年01月14日 思う事/思い付いた事:: マルチスレッドとアトミック/インターロック Tweet    @jin1016をフォロー ムービーでは、特に気にせずクリティカルセクションでロックをかけて処理しているが、Windows のクリティカルセクションはかなり遅いらしい。 これはいくつかの文書で見かける。 そして、クリティカルセクションではなく、可能ならインターロック系のメソッドを使うとかなり改善するとも。 インターロック系のメソッドは、InterlockedIncrement や InterlockedDecrement、InterlockedCompareExchange など。 Linux なら、atomic.h の atomic_inc や atomic_dec、atomic_compare_an

  • MYSQLのトランザクションについて質問です! - OKWAVE

    質問1への回答 START TRANSACTION は 次のsql文待ち状態です。 ロック対象は、「InnoDB は、行レベルでロックを行う」とあるので、 これ以降のsql文で、insertやupdate、deleteなどtable内容を変更するsql文の対象tableの変更対象行です。 質問2への回答 START TRANSACTION 後にinsertやupdate、deleteなどtable内容を変更するsql文が発行された時に、その対象tableの該当行は書き込み禁止となります。 でも、読みとりもロックしないと、結局後から不整合な変更をされてしまうと困るので、そういう場合はREAD COMMITTED も設定して、read lock も行う必要があるでしょう。 というか、4.0.5 より前のバージョンでは、READ UNCOMMITTED(読みとり許可)の方が使えなかったらしいけど

    MYSQLのトランザクションについて質問です! - OKWAVE
  • 1