4

(iPad) シミュレーターで使用される monotouch ランタイムと実際のデバイスでの実行の違いに関するドキュメントはありますか?

私は最近、シミュレーターではなく、デバイスで実行しているときに ExecutionEngineException (ここで言及されているものとは一見無関係) が発生するコードを変更する必要がありました。

シミュレーターで JIT が有効になっていますか (デバイス上にないことはわかっています)、またはなぜこの違いがあるのですか?

(こちらの Monotouch フォーラムにも質問が投稿されています)

4

2 に答える 2

2

iOS シミュレーターはシミュレーターであり、エミュレーターではありません。これは、シミュレーターで実行すると、完全な x86 JIT にアクセスできることを意味しますが、デバイスでは ARM full-aot しか実行できません。他にもいくつかの微妙な違いがあります (特定のフレームワーク/機能はシミュレーターでは利用できません)。

于 2011-01-18T21:19:41.520 に答える
1

Simulator/iDevice について覚えておくべきことの 1 つは、使用する構成です。リンクの動作を再確認してください。Reflection を使用していて、そこにあると思われるプロパティの Get メソッドまたは Set メソッドがリンカーによって削除された場合、微妙なエラーが発生する可能性があります。

これは私を数回襲った。

于 2011-01-26T19:47:56.843 に答える