Pythonプロセスプール関数の表示と分析例

乌拉乌拉~
リリース: 2018-08-23 17:41:50
オリジナル
2111 人が閲覧しました

次の記事では、Python のプロセス プールとは何かについて学びます。 Python プロセス プールと、Python プログラミングにおいてプロセス プールが果たせる役割について学びます。

プロセス プール

Pool クラスは、ワーカー プロセスのプールを記述します。このクラスには、タスクがワーカー プロセスをオフロードするためのさまざまなメソッドがいくつかあります。

プロセス プールは、内部でプロセス シーケンスを維持します。使用されると、プロセス プールに移動してプロセスを取得します。プロセス プール シーケンスに利用可能なプロセスがない場合、プログラムはプロセス プール シーケンスに入るまで待機します。プロセス プール。使用可能なプロセスができるまで。

Pool クラスを使用してプロセス プールを作成し、送信されたタスクをプロセス プールに展開できます。

例を挙げてみましょう:

#apply
from  multiprocessing import Pool
import time

def f1(i):
    time.sleep(0.5)
    print(i)
    return i + 100
if __name__ == "__main__":
    pool = Pool(5)
    for i in range(1,31):
        pool.apply(func=f1,args=(i,))
        
#apply_async
def f1(i):
    time.sleep(0.5)
    print(i)
    return i + 100
def f2(arg):
    print(arg)
    
if __name__ == "__main__":
    pool = Pool(5)
    for i in range(1,31):
        pool.apply_async(func=f1,args=(i,),callback=f2)
    pool.close()
    pool.join()
ログイン後にコピー

A プロセス プール オブジェクトは、ワーカー プロセス プール内のどの作業を送信できるかを制御できます。タイムアウトとコールバックの非同期結果をサポートし、マップのようなオブジェクトを持ちます。実装。 。

processes: 使用されているワーカー プロセスの数プロセスが None の場合は、os.cpu_count() によって返された数を使用します。

initializer:Initializer が None の場合、各ワーカー プロセスは最初にInitializer(*initargs) を呼び出します。

maxtasksperchild: ワーカー プロセスが終了する前に完了できるタスクの数。完了後、新しいワーカー プロセスが元のプロセスを置き換えて、アイドル状態のリソースを解放します。 maxtasksperchild のデフォルトは None です。これは、プールが存在する限りワーカー プロセスが存続することを意味します。

context: ワーカー プロセスの開始時にコンテキストを指定するために使用されます。一般に、プールを作成するには、コンテキスト オブジェクトの multiprocessing.Pool() または Pool() メソッドが使用されます。どちらのメソッドもコンテキストを適切に設定します

注: Pool オブジェクトのメソッドは、プールを作成したプロセスによってのみ呼び出すことができます。

以上がこの記事の内容です、この記事では主にpythonプロセスプールの関連知識を紹介しますので、上記の内容を理解するために活用していただければ幸いです。この記事で説明したことがあなたのお役に立ち、Python の学習が容易になることを願っています。

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

以上がPythonプロセスプール関数の表示と分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!