pythonプロセスとスレッド小結の実例分析


従来の方式は2つの方法を呼び出して1つのタスクを実行し、方法は順番に実行します。

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  run('t1')
  run('t2')
マルチスレッド例
2スレッド同時実行1タスク

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)

if __name__ == '__main__':
  t1=threading.Thread(target=run,args=('t1',))
  t2=threading.Thread(target=run,args=('t2',))
  t1.start()
  t2.start()
自分で1つのクラスを書いて、threading.Threadを継承します。

# -*- coding:utf-8 -*-
import threading
import time
class MyThread(threading.Thread):
  def __init__(self,n):
    super(MyThread,self).__init__()
    self.n=n
  #         run  
  def run(self):
    print('runing task',self.n)
if __name__ == '__main__':
  #            
  t1=MyThread('t1')
  t2=MyThread('t2')
  t1.run()
  t2.run()
forループを使って複数スレッドを起動します。

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  for i in range(10):
    t=threading.Thread(target=run,args=('t-%s'%i,))
    t.start()
スレッドは他のコードと一緒に動作しますので、マルチスレッドを同時に実行してから他のコードを実行します。

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  time_start=time.time()
  #          t  
  t_objects=[]
  for i in range(10):
    t=threading.Thread(target=run,args=('t-%s'%i,))
    t.start()
    t_objects.append(t)
  #          ,        
  #                 
  #                  
  #   join()      
  #         t  
  for i in t_objects:
    t.join()
  time_end=time.time()
  sun=time_end-time_start
  print(sun)
締め括りをつける
以上は小编が皆さんに绍介したpythonプロセスとスレッドの结末の実例分析です。皆さんに助けてほしいです。もし何か疑问があれば、メッセージをください。小编はすぐに皆さんに返事します。