Вызов для ожидания GetFileAsync () никогда не возвращается и приложение зависает в приложении WinRT
Я пытаюсь загрузить и прочитать файл настроек при запуске приложения, и примерно в 90% случаевawait GetFileAsync("filename.xml");
никогда не возвращается, таким образом, висит приложение.
Примерно четверть времени, если я переберу код, он действительно вернется и прочитает файл.
Вот очень упрощенная версия кода:
App.xaml.cs:
protected override void OnLaunched(LaunchActivatedEventArgs args)
{
FileLoader.Load().Wait();
// File-load dependent stuff
}
FileLoader.cs:
public async static Task Load()
{
StorageFolder folder = ApplicationData.Current.LocalFolder;
StorageFile file;
bool fileExists = true;
try
{
// The following line (often) never returns
file = await folder.GetFileAsync("filename.xml");
{
catch
{
fileExists = false;
}
// Do stuff with loaded file
}
Если я смотрю окно вывода в Visual Studio, через некоторое время ожидания я получаю"The thread '<No Name>' (0x30c) has exited with code 0 (0x0)."
Кто-нибудь имеет представление о том, что здесь происходит?