embed:tips1
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| embed:tips1 [2023/01/29 09:30] – 作成 machiaworx | embed:tips1 [2023/01/29 09:50] (現在) – [基本方針] machiaworx | ||
|---|---|---|---|
| 行 10: | 行 10: | ||
| * 記述そのものでGCが発生。すなわち長い記述だとGCの量が多い | * 記述そのものでGCが発生。すなわち長い記述だとGCの量が多い | ||
| * 組み込み関数を呼ぶと300-400byte程度のGCが発生 | * 組み込み関数を呼ぶと300-400byte程度のGCが発生 | ||
| - | * 組み込み関数分のヒープ確保はどうもキャッシュされるっぽく、 | + | * 組み込み関数分のヒープ確保はどうもキャッシュされるらしく、複数回呼んでもメモリ使用量はほぼ変化しないときがある |
| - | * 複数回呼んでもメモリ使用量はほぼ変化しないときがある | + | |
| ==== 基本方針 ==== | ==== 基本方針 ==== | ||
| - | * 記述は可能な限りコンパクトにまとめ、処理内容に参照しない記述がないようにする | + | * 記述は可能な限りコンパクトにまとめ、処理内容に未使用の変数等の記述がないようにする |
| - | * 組み込み関数で数値や情報を取得する場合、内部の変数にキャッシュする | + | * 組み込み関数で数値やリスト・配列を取得する場合、ローカル変数にキャッシュする |
| * 参照や計算はminiscript内部の変数を用いる(毎回組み込み関数で参照しない。これは標準で用意されている関数も含む) | * 参照や計算はminiscript内部の変数を用いる(毎回組み込み関数で参照しない。これは標準で用意されている関数も含む) | ||
| - | コンパイラはなく、最適化がされないため、処理速度の向上やGC回避に対し、ソースコードの内容がモロに反映される模様。 | + | コンパイル処理については最適化がされないため、処理速度の向上やGC回避に対し、ソースコードの内容がモロに反映される模様。 |
| ==== UnityでのGCヒッチ回避策 ==== | ==== UnityでのGCヒッチ回避策 ==== | ||
embed/tips1.1674952237.txt.gz · 最終更新: 2023/01/29 09:30 by machiaworx