タグ

threadingに関するkoma_gのブックマーク (2)

  • Pythonで学ぶ 基礎からのプログラミング入門(33) マルチスレッド処理を理解しよう(後編)

    前回はマルチスレッドの概念の簡単な説明とともに、速度の測定方法とマルチスレッドの簡単な利用方法について学びました。今回はその発展として、継承によるマルチスレッド向けのクラスの作成やロックを使ったスレッド間の同期、マルチスレッド以外の並列化手法といった内容を扱います。 継承によるマルチスレッドの実現 前回はthredingモジュールのThreadクラスのコンストラクタにマルチスレッド化したい関数とその引数を渡すという形でマルチスレッドを実現しました。 このほかにもThreadクラス自体を継承することでマルチスレッドとして動作させるクラスを作成して使うこともできます。それほど複雑ではないので、まずはコードを見てみましょう。 import threading, time # Class definition class MyThread(threading.Thread): def __init

    Pythonで学ぶ 基礎からのプログラミング入門(33) マルチスレッド処理を理解しよう(後編)
  • Pythonで学ぶ 基礎からのプログラミング入門(32) マルチスレッド処理を理解しよう(前編) | マイナビニュース

    今回はマルチスレッドについて扱います。マルチスレッドは、簡単に言ってしまえば複数の処理を「並列」に進めることができるものです。マルチスレッドの反対がシングルスレッドであり、これは複数の処理を順番に進めていくものです。逆に言えば、ある処理が終わるまでは次の処理を実施することはできません。マルチスレッドおよびシングルスレッドの“スレッド”は「プログラムの実行単位」のことで、名前からわかるようにマルチスレッドはプログラムをマルチな実行単位で実行します。 今回の流れとしては、まず最初にプログラムの実行時間の測定手法について学びます。これを理解していないとマルチスレッドを使った高速化がどれほど効果的なものか理解しづらいためです。次にさまざまな処理にかかる遅延がどれほどのものかについて学びます。それらの基礎ができたうえで、シングルスレッドの問題点について、その次にマルチスレッドがどのようにその問題を克

    Pythonで学ぶ 基礎からのプログラミング入門(32) マルチスレッド処理を理解しよう(前編) | マイナビニュース
  • 1