setjmp/longjmpを調査していたところ、 setjmpが命令ポインター、スタック ポインターなどのレジスターを保存することがわかりました...
ただし、ここで得られないのは、スレッド自体のスタック内のデータをsetjmpとlongjmpの呼び出しの間で変更できないということです。その場合、longjmpは期待どおりに動作しません。
明確にするために、たとえば、longjmpがスタック ポインターを復元するとき、スタック ポインターが現在指しているメモリ内のデータは、setjmpが呼び出されたときと同じではないとします。これは起こりえますか?そうなったら困りませんか?
また、「 setjmp() ルーチンを呼び出したルーチンが戻った後、longjmp() ルーチンを呼び出すことはできません。」というステートメントが意味することは何ですか。