# OS_DumpStatistics

## 構文

  `#include <nitro/os.h>`
  `void OS_DumpStatistics( void* statBuf );`

## 引数

statBuf | 関数コスト集計バッファ

## 返り値

なし。

## 説明

関数コスト集計バッファの内容を表示します。

関数コスト計測の結果を集計した関数コスト集計バッファの内容を、`OS_Printf()` を用いて出力します。

この関数を有効にするためには、リンク時に libos.FUNCTIONCOST.a (thumb 版なら libos.FUNCTIONCOST.thumb.a ) を含む必要があります。これは make のオプションに TWL_PROFILE_TYPE=FUNCTIONCOST を指定することにより行ないます。Makefile の中に書いても有効です。ただし最終ROM版(FINALROM)ライブラリでは何も動作を行ないません。

> (表示例)

> > `---- functionCost statistics
> > ` `test1: count 1, cost 20
> > test2: count 3, cost 140
> > test3: count 4, cost 132
> > `

> 集計結果を表示している行は、左から、関数名、関数が呼ばれた回数、関数内で実行に要した時間コストを示します。
> `test1()` という関数は1回呼び出され、時間コストは20であったことがわかります。(時間コストの単位はチックで使用されるものと同じで、システムクロックの64分周です)　同様に、`test2()` は3回呼び出され、合計の時間コストが140であったことや、`test3()` は4回呼び出され、合計の時間コストが132であったことがわかります。

###
表示モードについて

集計結果の表示のように、全ての情報を確実に表示することが速度よりも優先される場合は、一時的にでも表示をブロッキングモードに設定することをお奨めします。詳細は `OS_SetPrintBlockingMode()` を参照してください。

## 参照

`OS_InitStatistics, OS_SetPrintBlockingMode
`

## 履歴

2009/04/03 ブロッキングモードについて追加
2004/05/19 初版