場合によっては、Windows Phone アプリケーションがExecutionEngineException
.
失敗を再現するための実際の手順がないため、どこを掘り下げればよいかわかりません。
ドキュメントには、この例外は非推奨であり、ランタイムでスローされなくなったと記載されています。
ほとんどの場合、この例外はビュー間のナビゲーション中に発生します (コード内の異なる場所で)。応答を取得しようとしているときに、この例外が発生することがあります。以下の特定のコード:
void ResponseCallback(IAsyncResult ar)
{
var request = ar.AsyncState as HttpWebRequest;
try
{
if (request == null) return;
var response = request.EndGetResponse(ar); // at this point I'm getting the exception.
SetLicenseResponse(response.GetResponseStream());
}
catch (WebException e)
{
Console.LogError("ResponseCallback exception:" + e.InnerException);
}
}
アプリケーションで使用される外部ライブラリは次のとおりです。
同様に、アプリケーションは 2 つの外部 Web サービスを使用します。TaskCompletionSource
生成されたサービス参照は、クラスを使用して async-await サービス コンシューマーにラップされます。
VirtualizingStackPanel
同様に、アイテム パネルとしてを使用している非常に大きな ListBoxes がいくつかあります。
GarbageCollector
インターネットで見つけた情報によると、ガベージ コレクションが並列スレッドから呼び出されると例外が発生する可能性がありますが、コード内で明示的に呼び出していません。
どこから始めればよいかアドバイスください。前もって感謝します。
注: ほとんどの場合、アプリケーションはデバイスでのデバッグ中に特定の例外で失敗します。デバッグ目的でエミュレータを使用していません。アプリケーションを通常モードで実行している間、ログに例外が記録されたことに気付いていませんが、例外がログに表示されるように適切に処理されていない可能性があります。