Command Section

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

NAME
     ucontext - user thread context

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <ucontext.h>

DESCRIPTION
     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 *);

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

STANDARDS
     The ucontext_t type conforms to X/Open System Interfaces and Headers
     Issue 5 ("XSH5") and IEEE Std 1003.1-2001 ("POSIX.1").  The IEEE Std
     1003.1-2008 ("POSIX.1") revision removed the ucontext_t from the
     specification.

FreeBSD 13.1-RELEASE-p6         March 23, 2020         FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...