[過去ログ] 【ゲームエンジン】Unityなんでも質問スレpart15 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
301
(1): 2024/12/06(金)13:42 ID:m+qwX7OY(1/6) AAS
C#はビルドするとCILっていう共通中間言語を生成する
これは人間にも読みやすいアセンブラっぽい物で実行時にVES(仮想実行システム)にCILを渡してJIT(実行時コンパイル)で必要な処理分がその都度機械語にコンパイルされ実行される
つまり毎回コンパイルは発生するけど動き始めれば機械語で動いてる

当然この方式に利点は合って同じソースでプラットフォームやマシン構成に合わせた最適な処理を生成してくれるので何も考えずに作ったC++より高速に動く事もある
また機械語に親和性の高い中間言語になっているので通常のコンパイルに比べたら格段に速く生成できる

明確にC#が遅い点は有って例えばメモリの確保宣言、これは仕方ない点もあってバグの温床になりやすいメモリの開放を自動でやってくれるガベージコレクションがある事
C#でも遅いけどその4~5倍ぐらいコストがかかる
ただ領域の確保は大差ないので大きなサイズになるほど相対的に変わらなくなる
つまりC#で小さい単位のメモリ確保と開放を繰り返すのはヤメレ
謎のメモリ保護エラーが発生する地獄を考えるとそのコストは払う価値がある
1-
あと 701 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.009s