Golang でコマンドを実行し、プロセスから切り離す
この問題は、Golang で長時間実行されるプロセスを実行する必要がある場合に発生します。以下のような特定の要件:
Cmd.Start() と Cmd.Wait() を使用して試みた解決策SIGTERM/SIGKILL をプログラムに送信するときに基になるプロセスがクラッシュするのを防ぐことを除いて、これらの要件のほとんどを満たします。
解決策
車輪の再発明を試みるのではなく、次のライブラリのいずれかの利用を検討してください:
Go-reap ライブラリ
推奨される解決策は、https://github.com/bashicorp/go-reap ライブラリを使用することです。
メモ
免責事項
提供されるソリューションは、サブプロセスがゾンビになるのを防ぐ問題に対処することに重点を置いています。すべての要件に対処する完全なソリューションには、複数のアプローチの組み合わせが必要になる場合があります。
以上がGolang で長時間実行プロセスを実行し、ゾンビになるのを防ぐには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。