PREEMPT(9)

PREEMPT(9) | Kernel Developer's Manual | PREEMPT(9)

# NAME

`preempt`, `yield` —
general preempt and yield functions

# SYNOPSIS

`#include <sys/sched.h>`

void
`preempt`(void);

`#include <sys/proc.h>`

void
`yield`(void);

# DESCRIPTION

The `preempt`() function puts the current LWP back on the system run queue and performs an involuntary context switch. The `yield`() function is mostly same as `preempt`(), except that it performs a voluntary context switch.

These functions drop the kernel lock before switching and re-acquire it before returning.

July 3, 2007 | NetBSD 10.1