2

.Net 4.5 JIT コンパイラーでいくつか問題が発生しています。JIT 最適化を無効にしてアセンブリをコンパイルすると、問題なく動作します。そうしないと、アクセス違反、セグメンテーション違反、またはその他の奇妙なエラーが発生します。(完全に管理されたコードから)。また、.Net 4.5 にのみ影響します。

したがって、IL を直接扱うため、IL がクラッシュする原因を突き止める必要があります (そのため、IL を生成しません)。新しいマルチコア JITting が原因である可能性があるのではないかと疑っています (マルチスレッド コードであるため)。もう少し絞って情報を集めたいと思います。

JIT コンパイラーにはどのような構成オプションがありますか? JIT コンパイルを完全に無効にせずにマルチコアを無効にすることはできますか? これの原因を追跡するために使用できる他のオプションはありますか?

4

1 に答える 1

0

これはかなり大きなプロジェクトでした。純粋に管理されたコードだと思っていましたが、管理されていない部分がいくつかあったようです。問題は、いくつかのものをマーシャリングされているものとして適切にマークしなかったことであり、.Net 4.5 はより攻撃的であるため、.Net 4.5 によってメモリが使用されましたが、.Net 4 以下では、保守的で使用されませんでした。万一に備えて"

于 2013-02-26T15:19:18.203 に答える