こんにちは私はSocketServerモジュールを使ってサーバー/クライアントモデルを持っています。サーバーの仕事は、クライアントからテスト名を受け取り、テストを開始することです。 サブプロセスモジュールを使用してテストが開始されます。 私は、サーバがクライアントに応答し続け、新しいジョブをリストやキューに積み重ねて1つずつ起動させたいのですが、唯一の制限は、サーバが現在テストを開始していないことです。Python。スレッディング
おかげ
こんにちは私はSocketServerモジュールを使ってサーバー/クライアントモデルを持っています。サーバーの仕事は、クライアントからテスト名を受け取り、テストを開始することです。 サブプロセスモジュールを使用してテストが開始されます。 私は、サーバがクライアントに応答し続け、新しいジョブをリストやキューに積み重ねて1つずつ起動させたいのですが、唯一の制限は、サーバが現在テストを開始していないことです。Python。スレッディング
おかげ
あなたは、新しいプロセスを開始するためのモジュール
multiprocessing
を使用することができます。サーバー側では、現在実行中のプロセスを参照する変数があります。 SocketServerを実行し、要求を受け入れてリストに格納することはできます。 1秒おきに(または何が必要なのか)、別のスレッドでは、isAlive()を呼び出して現在のプロセスが停止しているかどうかをチェックします。それが死んでいる場合は、リスト上で次のテストを実行するだけです。
もう1つの方法は、3番目のスレッド(チェックするスレッド)で、プロセスから.join()を呼び出して、現在のプロセスのコードの次の行を呼び出します死んでいる。そうすれば、1秒ごとに何度もチェックする必要はなく、より効率的です。
何をしたい場合がありますことです。
あなたの質問がありますか? – ForceBru
あなたの求人情報は、SOの「求人」部分に入れてください。 –
[ツアー](// stackoverflow.com/tour)と[ヘルプセンター](// stackoverflow.com/help)のドキュメントをお読みください。特に、[良い質問をする方法](// stackoverflow.com/help/how-to-ask)と[トピックに関する質問](// stackoverflow.com/help/on)を読んでください。 -topic)ここにSO。 –