setcontext işlevi, bağlam tarafından tanımlanmış bağlamı yeniden geçerli kılar. Bağlamda değişiklik yapılmaz ve istendiği kadar sık yeniden kullanılabilir.
Eğer bağlam setcontext ile oluşturulmuşsa yürütme sonunda yazmaçlar, setcontext sanki şimdi geri dönüş yapmış gibi aynı değerleri içerir.
Eğer makecontext'in çağrılmasıyla bağlamda değişiklik yapılmışsa makecontext'in çağrıldığı işlevle yürütmeye devam edilir ve bu işleve aynı çağrı sırasında verilen paramatreler aktarılır. Bu işlev geri dönüş yaptığında makecontext çağrılırken verilen bağlam
yapısının uc_link üyesi tarafından gösterilen bağlamla yürütmeye devam edilir. Eğer uc_link bir boş gösterici ise, bu durumda uygulama sonlanır.
Bağlam yığıt hakkında bilgi içerdiğinden aynı bağlamı aynı anda iki evre kullanmamalıdır. Aksi takdirde, sonuç çoğu durumda felaket olurdu.
setcontext işlevi bir hata oluşmadıkça dönmeyecekir, hata oluşmuşsa -1 değeri ile döner.
setcontext işlevi mevcut bağlamı basitçe bağlam parametresi ile tanımlayarak değiştirir. Mevcut bağlamın korunmasını gerektiren durumlar da olmasına rağmen bu çoğunlukla kullanışlıdır.