Pythonコルーチンのスケジューリングのプロセスは何ですか?

WBOY
リリース: 2023-05-12 11:40:17
転載
1511 人が閲覧しました

1. asyncRun 呼び出しは、コルーチンをイベント キューに入れることができます。ループはイベント ループ (スケジューラーとも呼ばれます) への入り口です。ループ呼び出しは、スレッド コントロールをコルーチン スケジューラーに渡します。

2. スケジューラは、今後も継続的にイベント キューからコルーチンや通常の関数を抽出し、実行してスケジュールします。

スケジュールと実行のプロセス中に、これらのイベントはさらに多くのイベントを生成する可能性があるため、引き続き実行されます。

from queue import Queue
 
 
class __EventQueue:
    def __init__(self) -> None:
        self.__eventQueue = Queue()
 
    def pushCallback(self, fn):
        self.__eventQueue.put(fn, block=True)
 
    def getCallback(self):
        return self.__eventQueue.get(block=True)
 
eventQueue = __EventQueue()
ログイン後にコピー

以上がPythonコルーチンのスケジューリングのプロセスは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート