質問

私は不透明を使用するかどうか pty.fork() または os.fork() 産卵場が背景に外部プロセスからのアプリです。などのチェスエンジン)

たいに普プロセスの金型の場合は親が死亡するか、あるいは、産卵アプリ。

その起伏のフォークス?

役に立ちましたか?

解決

の子プロセスで作成され os.fork() 継承しstdin/stdout/stderrから親プロセスに子どもを作成 pty.fork() は新しい擬似端子です。必要なものは、後に書くときのようなプログラムをxterm: pty.fork() に親プロセスを返します記述子制御端子子プロセスできますので視覚的に表現して、そのデータから翻訳されユーザーの行動端子入力dnaの塩基配列を決定した。

更新:

からpty(7)manページ:

プロセスが期待で接続する インタでのスレーブ終了 の擬似端末にし、それに対する 駆動プログラムとは を開設し、修士ます。何をするにも ご覧になるには修士終了する のプロセスのスレーブ 終了とさせていた入力入力に とする。例えば、書面に 割り込み文字(通常 制御-C)のマスターデバイス を起こしに割り込み信号 (SIGINT)を生成するには、 前景の過程グループ に接続されません。逆に、 それぞれの スレーブの擬似端末で 読み込みによるプロセス マスタに接続す。

他のヒント

は、過去に私はいつもこのためsubprocessモジュールを使用しました。これは、サブプロセスと通信するための優れたAPIを提供しています。

あなたはそれらの実行を阻止するためのcall(*popenargs, **kwargs)を使用することができ、私は非同期実行を扱うことができるPopenクラスを使用して信じています。

詳細はアウトドキュメントを確認します。

は限りos.forkpty.forkを使用するなど、両方のは非常にプラットフォームに依存しており、どちらも窓では動作しません(あるいは、少なくともテストされています)。 ptyモジュールは、より多くのドキュメントを読むことによって2の拘束されているようです。主な違いは、擬似端末の局面です。あなたはsubprocessモジュールを使用することができるようにするように建築家のあなたのコードを望んでいないのであれば、私はおそらくos.forkの代わりpty.forkで行くと思います。

Pseudotermialsは本当に、端末を期待するいくつかのアプリケーションのために必要です。対話型シェルは、これらの例の一つであるが、他の多くのがあります。 pty.forkオプションは、別のos.forkとしてではなく擬似端末を使用する特定のAPIとしてそこではありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top