エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Goで子プロセスを確実にKillする方法
Goで子プロセスとして外部コマンドを呼び出すには、標準パッケージのos/execを使えば簡単にできます。 e... Goで子プロセスとして外部コマンドを呼び出すには、標準パッケージのos/execを使えば簡単にできます。 exec.Command()で作った子プロセスを途中でKillするために、(*Cmd) Process.Kill()も用意されています。 ただしこの関数を使うときは気をつけないと、孤児プロセスを生んでしまいます。 ここでは、孤児プロセスを生まないように安全に子プロセスをKillする方法を紹介します。 ※手元の実行環境はLinuxですが、macOSもPOSIXなのできっと同じです。Windowsは知りません。 (2023/04/27追記) Windowsでは、taskkillコマンドに/tを付けることで子プロセスを含めてKillできます。 また、/pidにはcmd.Process.Pidをそのまま渡せます。 これをos/execを使って呼び出すと良いでしょう。 (2021/01/25:S