タグ

ブックマーク / assam-at-night.blogspot.com (1)

  • pythonのthreading.local()の動作

    threading.local()の使い方のメモ。 threading.local()は、以下のように考えるとわかりやすい。 仮に、オプジェクトの内部構造を見るinternalという関数があったとしよう。 threading.local()を呼ぶと、ディクショナリを持った新しいオプジェクトが作られる。 >>>tss1 = threading.local() >>>internal(tss1.__dict__) {} tss1に値をセットすると、自動的に、スレッド番号をキーとしたサブディクショナリへ値がセットされる。仮にスレッド番号が9056とすると、 >>>tss1.val = 10 >>>internal(tss1.__dict__) {9056: {'val': 10}} >>>tss1.val 10 違うスレッドから値valをセットすると、違うサブディクショナリへセットされる。 >>

    y_yanbe
    y_yanbe 2008/01/11
    なるほどこういう仕組みだったんだ.説明が分かりやすい
  • 1