OS_Sleep

構文

#include <nitro/os.h>
void OS_Sleep( u32 msec );

引数

msec 休止状態にする時間 (ミリ秒)

返り値

なし。

説明

スレッドを一定時間休止状態にします。

msec は休止状態にする時間で、単位はミリ秒です。

内部的には、指定時間後にアラームハンドラが呼ばれるようにアラームをセットして自らのスレッドを休止状態にし、アラームハンドラでそのスレッドを休止状態から解除しようとします。そのため、OS_InitThread() のほかに、OS_InitTick()OS_InitAlarm() であらかじめチックシステムとアラームシステムが初期化されていなければなりません。

休止状態となっているスレッドが、OS_KillThread*() や、OS_DestroyThread() で他のスレッドから破棄された場合、内部で自動的に休止状態から復帰するために設定していたアラームをキャンセルします。

参照

OS_InitThread, OS_InitTick, OS_InitAlarm, OS_SleepThread
OS_KillThread*, OS_DestroyThread

履歴

2005/08/08 スレッドが休止中に他のスレッドから破棄された場合について追記
2004/03/02 初版