init、Perlに採用されずにバックグラウンドでプロセスを実行する

ブライアンK

perlプログラムを介して外部プロセスを実行すると、perlプログラムはプロセスの親のままになります。プロセス管理を容易にします。

system('sleep 3000'); # perl is still the parent

ただし、プログラムがプロセスの終了を待つ必要がないように、プロセスをバックグラウンドで実行しようとすると...

system('sleep 3000 &'); 

このsleepプロセスはシステムinitプロセスによって採用され、それを実行したプログラムとは関連付けられなくなります。

この状況でプロセス管理を処理する適切な方法は何ですか。プロセスの実行をバックグラウンドでエミュレートしながら、プロセスの祖先を維持するにはどうすればよいですか?

mpapec

あなたが使用することができますthreads

use threads;
my $t = async { system('sleep 3000'); };

# do something in parallel ..

# wait for thread to finish 
$t->join;

または fork

sub fasync(&) {
  my ($worker) = @_;

  my $pid = fork() // die "can't fork!"; 
  if (!$pid) { $worker->(); exit(0); }

  return sub {
    my ($flags) = @_;
    return waitpid($pid, $flags // 0);
  }
}

my $t = fasync { system('sleep 3000'); };

# do something in parallel ..

# wait for fork to finish 
$t->();

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

出力を返す前にバックグラウンドで実行されるPythonサブプロセス

分類Dev

入力せずに&毎回バックグラウンドでプロセスを実行するにはどうすればよいですか?

分類Dev

プロセスがバックグラウンドで実行されているときに表示されるKivyをポップアップします

分類Dev

サブプロセスはバックグラウンドで実行され、出力を1行ずつファイルに書き込みます

分類Dev

バックグラウンドで実行されているプロセスにコマンドをパイプする方法は?

分類Dev

bashで実行されているバックグラウンドプロセスの数を確認し、各バックグラウンドプロセスを「待機」するにはどうすればよいですか?

分類Dev

すでにバックグラウンドで実行されているプロセスでnohupを使用する方法

分類Dev

Pythonを使用してバックグラウンドで実行されるプロセスを作成します

分類Dev

プロセスがバックグラウンドで実行されているときにkivyで何かを表示する

分類Dev

/etc/init.dスクリプトでデーモンを呼び出すと、バックグラウンドで実行されずにブロックされます

分類Dev

SASでrsubmitを使用して、プロセスが完了するのを待たずにバックグラウンドで実行する方法

分類Dev

並列プロセスを開始せずにDjangoでバックグラウンドプロセスを実行できますか?

分類Dev

フォアグラウンドプロセスの実行中にバックグラウンドで別のプロセスを生成する方法

分類Dev

PHPでバックグラウンドプロセスを永続的に実行する

分類Dev

pytoexeconverterでPythonスクリプトをexeに変換した後も、プロセスはバックグラウンドで実行されています

分類Dev

バックグラウンドプロセスとして実行されているPythonスクリプトをファイルに出力する

分類Dev

Linuxでバックグラウンドでプロセスを実行する

分類Dev

プロセスはバックグラウンドで実行されているとどのように定義されていますか?

分類Dev

pidのないUNIXマシンでバックグラウンドで実行されているプロセスを無期限に閉じる方法は?

分類Dev

バックグラウンドでサブプロセスを実行する

分類Dev

symfonyでバックグラウンドプロセスを実行する方法

分類Dev

Pythonでバックグラウンドプロセスを実行する

分類Dev

arduinoでバックグラウンドプロセスを実行する

分類Dev

バックグラウンド python で GPIO プロセスを実行する

分類Dev

マウスボタンを押さずにドラッグアンドドロップを実行するにはどうすればよいですか?

分類Dev

コマンドプロンプトからさまざまなパラメータを取得するバックグラウンドプロセスとしてPythonスクリプトを実行するにはどうすればよいですか?

分類Dev

WindowsのバックグラウンドでApacheのhttpdデーモンプロセスを実行するにはどうすればよいですか?

分類Dev

Pythonをバックグラウンドで実行して独立したプロセスを作成するにはどうすればよいですか?

分類Dev

これは、プロセスをバックグラウンドで実行し、出力をnohupファイルに出力する正しい方法ですか?

Related 関連記事

  1. 1

    出力を返す前にバックグラウンドで実行されるPythonサブプロセス

  2. 2

    入力せずに&毎回バックグラウンドでプロセスを実行するにはどうすればよいですか?

  3. 3

    プロセスがバックグラウンドで実行されているときに表示されるKivyをポップアップします

  4. 4

    サブプロセスはバックグラウンドで実行され、出力を1行ずつファイルに書き込みます

  5. 5

    バックグラウンドで実行されているプロセスにコマンドをパイプする方法は?

  6. 6

    bashで実行されているバックグラウンドプロセスの数を確認し、各バックグラウンドプロセスを「待機」するにはどうすればよいですか?

  7. 7

    すでにバックグラウンドで実行されているプロセスでnohupを使用する方法

  8. 8

    Pythonを使用してバックグラウンドで実行されるプロセスを作成します

  9. 9

    プロセスがバックグラウンドで実行されているときにkivyで何かを表示する

  10. 10

    /etc/init.dスクリプトでデーモンを呼び出すと、バックグラウンドで実行されずにブロックされます

  11. 11

    SASでrsubmitを使用して、プロセスが完了するのを待たずにバックグラウンドで実行する方法

  12. 12

    並列プロセスを開始せずにDjangoでバックグラウンドプロセスを実行できますか?

  13. 13

    フォアグラウンドプロセスの実行中にバックグラウンドで別のプロセスを生成する方法

  14. 14

    PHPでバックグラウンドプロセスを永続的に実行する

  15. 15

    pytoexeconverterでPythonスクリプトをexeに変換した後も、プロセスはバックグラウンドで実行されています

  16. 16

    バックグラウンドプロセスとして実行されているPythonスクリプトをファイルに出力する

  17. 17

    Linuxでバックグラウンドでプロセスを実行する

  18. 18

    プロセスはバックグラウンドで実行されているとどのように定義されていますか?

  19. 19

    pidのないUNIXマシンでバックグラウンドで実行されているプロセスを無期限に閉じる方法は?

  20. 20

    バックグラウンドでサブプロセスを実行する

  21. 21

    symfonyでバックグラウンドプロセスを実行する方法

  22. 22

    Pythonでバックグラウンドプロセスを実行する

  23. 23

    arduinoでバックグラウンドプロセスを実行する

  24. 24

    バックグラウンド python で GPIO プロセスを実行する

  25. 25

    マウスボタンを押さずにドラッグアンドドロップを実行するにはどうすればよいですか?

  26. 26

    コマンドプロンプトからさまざまなパラメータを取得するバックグラウンドプロセスとしてPythonスクリプトを実行するにはどうすればよいですか?

  27. 27

    WindowsのバックグラウンドでApacheのhttpdデーモンプロセスを実行するにはどうすればよいですか?

  28. 28

    Pythonをバックグラウンドで実行して独立したプロセスを作成するにはどうすればよいですか?

  29. 29

    これは、プロセスをバックグラウンドで実行し、出力をnohupファイルに出力する正しい方法ですか?

ホットタグ

アーカイブ