libsigsegv のドキュメントには、スレッドで libsigserv を使用するには pthread_sigmask と pthread_setcancelstate を呼び出す必要があると書かれていますが、どこで使用すればよいかわかりません。Linux で g++ を使用してコンパイルしているコードを以下に示しますが、もちろん、スレッド スタック オーバーフローをトラップすることはできません。これらの関数をどのように呼び出す必要がありますか? 他に何が間違っていますか?スレッド内のスタックオーバーフローによって引き起こされた SIGSEGV をトラップすることは可能ですか?
私が持っているmain
機能で:
stackoverflow_install_handler(&stackoverflow_function, myStack, 16 * 1024);
stackoferflow_function
プリント「シグナルトラップ」
スレッド関数は、スタック オーバーフローを引き起こす無限再帰関数を呼び出します。
前もって感謝します。