visual true studio solucionar registrado para net just jitdebugging habilitar framework especifico error depurador depuración depuracion debugger como aplicación admite activar c# xamarin.ios monodevelop jit servicestack

c# - true - MonoTouch: ¿Utilizando ServiceStack causó un error JIT?



no se especifico el depurador jit registrado (2)

Estoy usando la compilación de Service Stack de MonoTouch desde https://github.com/ServiceStack/ServiceStack/tree/master/release/latest/MonoTouch

Cuando se ejecuta en un iPad, recibo un error JIT . Pensé que MonoTouch se encargó de eso en la construcción.

Attempting to JIT compile method ''ServiceStack.Text.Json.JsonReader`1<Common.AppCategoryEnum>:GetParseFn ()'' while running with --aot-only.

Yo uso el DLLS:

  • ServiceStack.Common.dll
  • ServiceStack.Interface.dll
  • ServiceStack.Text.dll

Y solo esta única llamada:

new JsonServiceClient ().GetAsync<MyResponse> (url, Success, Failure);


Estoy usando la construcción MonoTouch de Service Stack de

Esos .dll tienen más de 3 meses y se encontró un problema similar que se solucionó hace un mes.

Me sale un error JIT. Pensé que MonoTouch se encargó de eso en la construcción.

Sí. Al construir para MonoTouch, se usa el compilador AOT (anticipado). Compila todo lo que sabe que requerirá en tiempo de ejecución.

Sin embargo, a veces el compilador AOT no puede saber todo (por ejemplo, métodos virtuales genéricos) o compilar todas las variaciones posibles (por ejemplo, tipos de valores). Consulte las limitaciones genéricas de la sección en el sitio web de documentación. En tal caso, el compilador AOT podría necesitar ayuda (una firma que garantizará que se compile el código correcto, por ejemplo, algo así).

También puede ser un error, donde un método requerido no fue aprobado por alguna razón. Cuando esto se descubre, en el tiempo de ejecución, se produce una excepción porque falta el código y no se puede usar el JIT para proporcionarlo.


Sé que ha pasado mucho tiempo antes de que se creara este hilo, pero de algún modo encuentro aquí y allá una solución alternativa simplemente llame a var dummy = new JsonSerializer () en AppDelegate en el método FinishedLaunching.