ホームページ  >  記事  >  バックエンド開発  >  Pythonスレッドモジュールとは何ですか?スレッドモジュールを理解するための 9 つの方法

Pythonスレッドモジュールとは何ですか?スレッドモジュールを理解するための 9 つの方法

乌拉乌拉~
乌拉乌拉~オリジナル
2018-08-21 19:43:581457ブラウズ

Python プログラミング言語に初めて触れた人は、Python スレッド モジュール を学び始めたばかりの時点で、Python の スレッド モジュールを理解していますこの記事では、Python のスレッド モジュールについて学びましょう。早速、スレッドモジュールの学習を始めましょう。

スレッド モジュールとは

Python は、スレッドとスレッドという 2 つの標準ライブラリを通じてスレッドのサポートを提供します。 thread は、低レベルのプリミティブなスレッドと単純なロックを提供します。

スレッド モジュールによって提供されるその他のメソッド:

1.threading.currentThread(): 現在のスレッド変数を返します。

2.threading.enumerate(): 実行中のスレッドを含むリストを返します。実行中とは、スレッドの開始後から終了までを指します。開始前と終了後のスレッドは除きます。

3.threading.activeCount(): 実行中のスレッドの数を返します。これは、len(threading.enumerate()) と同じ結果になります。

使用方法に加えて、スレッド モジュールはスレッドを処理するための Thread クラスも提供します。Thread クラスは次のメソッドを提供します:

1.run(): スレッド アクティビティを表すために使用されるメソッド。

2.start(): スレッドアクティビティを開始します。

3.join([time]): スレッドが終了するまで待ちます。これにより、スレッドの join() メソッドが異常終了 (通常終了するか、未処理の例外をスロー) が呼び出されるか、またはオプションのタイムアウトが発生するまで、呼び出しスレッドがブロックされます。

4.isAlive(): スレッドがアクティブかどうかを返します。

5.getName(): スレッド名を返します。

6.setName(): スレッド名を設定します。

Threading モジュールを使用してスレッドを作成する

Threading モジュールを使用してスレッドを作成し、threading.Thread から直接継承し、__init__ メソッドをオーバーライドしてメソッドを実行します。

# !/usr/bin/python
# -*- coding: UTF-8 -*-

import threading
import time

exitFlag = 0

class myThread(threading.Thread):  # 继承父类threading.Thread
   def __init__(self, threadID, name, counter):
      threading.Thread.__init__(self)
      self.threadID = threadID
      self.name = name
      self.counter = counter
   def run(self):  # 把要执行的代码写到run函数里面 线程在创建后会直接运行run函数 
      print "Starting " + self.name
      print_time(self.name, self.counter, 5)
      print "Exiting " + self.name
def print_time(threadName, delay, counter):
   while counter:
      if exitFlag:
         (threading.Thread).exit()
      time.sleep(delay)
      print "%s: %s" % (threadName, time.ctime(time.time()))
      counter -= 1
# 创建新线程
thread1 = myThread(1, "Thread-1", 1)
thread2 = myThread(2, "Thread-2", 2)
# 开启线程
thread1.start()
thread2.start()
print "Exiting Main Thread"

上記プログラムの実行結果は以下の通りです:

Starting Thread-1
Starting Thread-2
Exiting Main Thread
Thread-1: Thu Mar 21 09:10:03 2013
Thread-1: Thu Mar 21 09:10:04 2013
Thread-2: Thu Mar 21 09:10:04 2013
Thread-1: Thu Mar 21 09:10:05 2013
Thread-1: Thu Mar 21 09:10:06 2013
Thread-2: Thu Mar 21 09:10:06 2013
Thread-1: Thu Mar 21 09:10:07 2013
Exiting Thread-1
Thread-2: Thu Mar 21 09:10:08 2013
Thread-2: Thu Mar 21 09:10:10 2013
Thread-2: Thu Mar 21 09:10:12 2013
Exiting Thread-2

以上がこの記事で説明する内容の全てです この記事では主にpythonスレッドモジュールの関連知識を紹介します. 情報を利用して上記の内容を理解できるようになることを願っています。この記事で説明したことがあなたのお役に立ち、Python の学習が容易になることを願っています。

関連知識の詳細については、php 中国語 Web サイトの Python チュートリアル 列を参照してください。

以上がPythonスレッドモジュールとは何ですか?スレッドモジュールを理解するための 9 つの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。