0

シグナル ハンドラを使用して ctrl-c をトラップしましたが、コールバック スレッドの無限ループが原因でアプリケーションを終了できませんでした。

ctrl-c をトラップするシグナル ハンドラーがあり、ハンドラーで何らかのアクションを実行して exit(0); を実行します。しかし、私のアプリケーションでは、コールバック スレッドが無限ループを実行している場合、ctrl-c の後でもアプリケーションを終了できませんでした。

pthread_kill、pthread_exit、pthread_cancel を試しましたが、何も機能しませんでした。

参考までに、while(1) ループが多すぎるため、フラグを立てる柔軟性がありません。アプリケーションを終了したいだけです。提案してください。

4

1 に答える 1

1

代わりに試してください_exit(2)、それは出口フックを実行しません。

于 2012-04-26T13:36:38.627 に答える