タグ

threadに関するcanipyのブックマーク (2)

  • コンソールで処理中であることを示す文字を表示 (System.Console, 処理中, SetCursorPosition, CusorLeft, CursorTop, Task.Factory.StartNew) - いろいろ備忘録日記

    コンソールで処理中を表す際に、よく「.」の表示が行われていたりします。 一定時間経過するごとに、「.」を表示していって利用者に今処理中であることを 示します。 それとは別に、グルグル回る文字を表示して処理中であることを示す方法もあります。 今回は、後者のやり方です。 System.Consoleクラスには、カーソルの位置を制御するために以下のメソッド及びプロパティが存在します。 Console.SetCursorPositionメソッド カーソル位置を設定します。 Console.CursorLeftプロパティ バッファ領域のカーソルの列位置を取得します。 Console.CursorTopプロパティ バッファ領域のカーソルの行位置を取得します。 要は、1文字描画して、その後カーソル位置を戻して再度描画すると 見た目グルグルしているように見えるという事になります。 以下サンプルです。 us

    コンソールで処理中であることを示す文字を表示 (System.Console, 処理中, SetCursorPosition, CusorLeft, CursorTop, Task.Factory.StartNew) - いろいろ備忘録日記
  • 第5回 multiprocessingモジュールによるプロセス間通信 | gihyo.jp

    multiprocessingモジュール multiprocessingモジュールは、Python2系列では2.6以降、3系列では3.0以降に標準となったモジュールです。このモジュールはthreadingモジュールに似たAPIでプロセス間通信などの機能を提供します。このモジュールにより、GILの問題を回避することができ、複数のCPUCPUコアの性能を生かすことができます。また、このモジュールはローカルのみならず、リモートでのプロセス間通信も行うことが可能で、簡単に分散処理などを実装することができます。 まず、GIL(Global Interpreter Lock)とはPythonのインタプリタ上で一度に1つのスレッドだけが動作するよう保証するためのロックです。このロックによって、同時に同じメモリにアクセスするスレッドが存在しないことを保証します。 しかしながら、このロックによって、一度に

    第5回 multiprocessingモジュールによるプロセス間通信 | gihyo.jp
  • 1