スレッド読み取りおよび書き込み操作
インポートスレッド、ランダム、キュー
Q = queue.Queue()
連想リスト = []
DEF (shengchan)
用 I における範囲(10 :)
alist.append(random.randint( 1,20 ))
q.put(連想リスト)
印刷(' 随机生成的十个数是%S '%連想リスト)
DEF xiaofei():
オープンと(' xiabo.txt '、' W + '、符号化= ' UTF8 ' :)Fとして
f.write(STR(Q。 ()))を取得
f.seek(0)
C= f.read()
プリント(C)
もし __name__ == ' __main__ ' :
T1 = threading.Thread(目標= shengchan)
T2 = threading.Thread(目標= xiaofei)
t1.start()
t2.start()
プールの関連プロセス
マルチプロセッシングインポートプール #のインポートモジュールプロセスプールの インポート OS、時間、ランダム #導入窓システム、時間、乱数ブロック #の印刷(はrandom.Random()) DEF:タスク(名前) #の名前はパラメータであり、第1の分析機能機能の 印刷(' S%以下に(%のD)...実行中のタスク'%(名前、os.getpid())) #の印刷プロセスプールのパスパラメータIと同様に、プロセス番号を time.time =を開始します() #記録開始時刻 time.sleep(はrandom.Random()* 3) #の数ランダム0-3間 #1 印刷(はrandom.Random()* 3)整数%S%D%Fストリングフロート 端time.time =() #1 の終了時刻 印刷(「タスク%sの%0.2F実行時間」%(名前は、(エンド-スタート))) #の終わりには、それが時間の関数を実行した時間の長さを計算するために開始時刻を減算することによって得られる IF __name__ == 「__main__ 」: 印刷(' 親プロセスがD%である'%のos.getpid()) #現在のプロセス番号ID取得 P =プール(4) #メソッドを使用して4つの工程プロセスプールを作成 するための I における範囲(1 ,. 6): #へ4のタスク割り当て処理タスク数が1,2,3,4,5である p.apply_async(=タスク、引数(I)) #1 apply_asyncは、非ブロッキング非同期です。#iは、パラメータを渡す、タスクの実行プロセスプール機能を作る #は意味:スケジュールに従ってシステムの切り替え処理を実行する準備ができて、終了した現在のプロセスを待ちません。 印刷(「...終了するすべての子プロセスを待ち」) p.close() #は、あなたの後ろに参加しているため、プロセスプールを閉じる子供はもはや周りに実行されていることを確認してはならない #time.sleep(2) #1 p.join()#をすべて作りますプロセスは、誰もが夕食のために別の家を待っているで終わる 印刷(「アップ終了するすべての子プロセス」)