Command Section
UCONTEXT(3)            FreeBSD Library Functions Manual            UCONTEXT(3)

     ucontext - user thread context

     Standard C Library (libc, -lc)

     #include <ucontext.h>

     The ucontext_t type is a structure type suitable for holding the context
     for a user thread of execution.  A thread's context includes its stack,
     saved registers, and list of blocked signals.

     The ucontext_t structure contains at least these fields:

        ucontext_t *uc_link          context to assume when this one returns
        sigset_t uc_sigmask          signals being blocked
        stack_t uc_stack             stack area
        mcontext_t uc_mcontext       saved registers

     The uc_link field points to the context to resume when this context's
     entry point function returns.  If uc_link is equal to NULL, then the
     process exits when this context returns.

     The uc_mcontext field is machine-dependent and should be treated as
     opaque by portable applications.

     The following functions are defined to manipulate ucontext_t structures:

        int getcontext(ucontext_t *);
        ucontext_t * getcontextx(void);
        int setcontext(const ucontext_t *);
        void makecontext(ucontext_t *, void (*)(void), int, ...);)(void), int, ...);
        int swapcontext(ucontext_t *, const ucontext_t *);

     sigaltstack(2), getcontext(3), getcontextx(3), makecontext(3)

FreeBSD 11.1-RELEASE-p4       September 10, 2002       FreeBSD 11.1-RELEASE-p4
Command Section