[][src]Function kernel::process::process::wakeup

pub fn wakeup<T>(channel: *const T)

wakeup process on channel

channel is an identifier of sleep lock channel. Should be the same as in sleep.

If wakeup finds a position in PROCS_POOL is BeingSlept, which means that a process is to be slept, but not yet being put back into the pool, wakeup will temporarily unlock PROCS_POOL lock and wait for PROCS_POOL_SLEEP to be unlocked, so that there won't be lost wakeup issues.