Как мне сохранить контекст выполнения, чтобы затем восстановить его из функций ниже по стеку
LinuxForum.Fans
POSIX threads: контекст выполнения процесса
Автор: archer
2 сообщений
976 просмотров
Всем спасибо, сохранить/восстановить контекст выполнения можно с помощью функций setjmp/longjmp из стандартной библиотеки C. Их можно применить для обработки ошибок, например если в вызванной функции произошла фатальная ошибка то её выполнение можно прекратить, вызвав longjmp(), вернуться к месту, где была вызвана функция и обработать ошибку, как в блоке try/catch в c++. Если кому интересно, можете почитать http://computerlib.narod.ru/html/setjmp.htm.
Войдите или зарегистрируйтесь, чтобы ответить.