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();
[...]
}
}
なぜ複数の延期を取得していますか?私はあなたが*実行*の後に1つを取得し、最後に完了する必要がありますと思う。タスクの途中でcompleteを呼び出すと、多分OSはそれを完了として扱い、リソースを解放します。あなたはそれを試しましたか? – Romasz
oh、sry。これはちょうどエラーを修正する試みでした –
最後に置くことで修正しました。それが待っている声明の後であったが、今は最後である。どうも –