Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。
Q&A
解決済
1回答
1297閲覧
総合スコア13
0グッド
0クリップ
投稿2014/11/19 16:52
0
Go言語で、Unixのshellで可能なように、Ctrl+Cでプログラムのcleanup関数を 起動してプログラム終了させることは可能でしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答1件
ベストアンサー
os/signalパッケージを使ってシグナルを処理します。
以下、サンプルプログラムです。ちなみにCtrl+CはSIGINTです。
lang1sigc := make(chan os.Signal, 1) 2signal.Notify(sigc, 3syscall.SIGHUP, 4syscall.SIGINT, 5syscall.SIGTERM, 6syscall.SIGQUIT) 7go func() { 8 s := <-sigc 9 // ... cleanup 10}
lang
1sigc := make(chan os.Signal, 1) 2signal.Notify(sigc, 3syscall.SIGHUP, 4syscall.SIGINT, 5syscall.SIGTERM, 6syscall.SIGQUIT) 7go func() { 8 s := <-sigc 9 // ... cleanup 10}
投稿2014/11/21 07:30
総合スコア41
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.48%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
Go言語の質問です。Shellのように、Ctrl+Cを キャプチャしてcleanup関数を起動させられないでしょうか?
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。