# OS_DestroyThread

## 構文

      #include <nitro/os.h>

      void OS_DestroyThread( OSThread* thread );

## 引数

thread | 終了させるスレッド

## 返り値

なし。

## 説明

指定のスレッドを終了します。その後、他の実行可能なスレッドに切り替わります。

`OS_DestroyThread()` では、`OS_SetThreadDestructor()` でスレッドデストラクタを予め設定していた場合であっても、デストラクタ関数は呼び出されません。(`OS_KillThread*()` ではデストラクタ関数が呼び出されます。)

スレッド thread にカレントスレッドを指定することも出来ます。この場合、自分自身を終了して次に実行可能な他のスレッドに切り替わります。この場合も、スレッドデストラクタは呼び出されません。

スレッド thread が mutex をロックしている場合は、それらロックしている全ての mutex をアンロックします。

`OS_DestroyThread()` は指定のスレッド thread を予告なく突然終了させるという少々危険な関数です。スレッドの動作構造を理解して使用するようにしてください。

## 参照

`OS_InitThread, OS_ExitThread, OS_KillThread*, OS_SetThreadDestructor`

## 履歴

2005/07/12 `OS_KillThread*()` との違いを記述
2004/12/27 初版