CTRL + Cリソースの解放後にスレッドを停止します

あなたには、いくつかの処理cをCTRL +を押したときに何も場合は、そのようなネットワークポートなど、いくつかの未発表のリソースが、使用中である可能性があります。

次のようにキャプチャCTRL + C Cの必要な信号機能ライブラリは、特定のコードです。

書式#include <iostreamの>

書式#include <signal.hに>
BOOL app_stopped = ;
無効sigint_handler int型SIG {
もしSIG == SIGINT {
  //のCTRL + cが終了したときにコードが実行さ
  std :: coutの<< "Ctrl + Cキーを押します!" << はstd :: てendl ;
  app_stopped = ;
  }
}
 
INT メインint型ARGC CHAR * * ARGV {
  信号SIGINT sigint_handler
  一方、{
    std :: coutの<< "whileループ..." << はstd :: てendl ;
    もしapp_stopped )  破ります
  }
  std :: coutのは、<< "アプリが停止しました!" << はstd :: てendl ;  
  リターン0 ;
}

おすすめ

転載: www.cnblogs.com/yangxingsha/p/11528689.html