2017-01-20 16 views
0

私はすでにそれを探知しましたが、何も見つかりませんでした。 コンソールが表示されている:プログラム「[2952] backgroundTaskHost.exe」がコード1(0x1)で終了しました

The program "[2952] backgroundTaskHost.exe" has exited with the code 1 (0x1) 

MainProjectはBackgroundTaskのへの参照を得ました。タスクは、fileIOリーダーを待つ間に終了します。

StorageFile sampleFile = await storageFolder.GetFileAsync("Klasse.txt"); 
Stufe = await FileIO.ReadTextAsync(sampleFile); 

私はすでに別のFILEIOリーダーと呼ばれますが、タスクはすべてのすべてで

StorageFile sampleFile = await storageFolder.GetFileAsync("Facher.txt"); 
Fach = await FileIO.ReadTextAsync(sampleFile); 

を終了しませんでした前に:

namespace BackgroundTask 
{ 
    public sealed class BackgroundTask : IBackgroundTask 
    { 
     string Stufe = ""; 
     string Fach = ""; 

     BackgroundTaskDeferral _deferral; 
     public async void Run(IBackgroundTaskInstance taskInstance) 
     { 
      _deferral = taskInstance.GetDeferral(); 
      StorageFolder storageFolder = ApplicationData.Current.LocalFolder; 

      //GetFächer 
      try 
      { 
       StorageFile sampleFile = await storageFolder.GetFileAsync("Facher.txt"); 
       Fach = await FileIO.ReadTextAsync(sampleFile); 
      } 
      catch (Exception e) { } 

      //GetStufe 
      try 
      { 
       StorageFile sampleFile = await storageFolder.GetFileAsync("Klasse.txt"); 
       Stufe = await FileIO.ReadTextAsync(sampleFile); 
      } 
      catch (Exception e) { Debug.WriteLine(e); } 
      _deferral.Complete(); 

      [...] 
     } 
} 
+2

なぜ複数の延期を取得していますか?私はあなたが*実行*の後に1つを取得し、最後に完了する必要がありますと思う。タスクの途中でcompleteを呼び出すと、多分OSはそれを完了として扱い、リソースを解放します。あなたはそれを試しましたか? – Romasz

+0

oh、sry。これはちょうどエラーを修正する試みでした –

+0

最後に置くことで修正しました。それが待っている声明の後であったが、今は最後である。どうも –

答えて

0

、私は非常に完全なタグを入れていました終わり。今すぐ動作します

関連する問題