I assume from your reference to uctx_main
that you are following the example in the Linux man page for makecontext()
.
In that example, uctx_main
is the context for the main thread, which is set when calling setcontext()
to switch to uctx_func2
.
uctx_main
isn't special in any way, other than it having been set from the main thread (and being set as the successor to uctx_func1
in the example).
In general, every thread you create needs to have a context.