La llamada para esperar GetFileAsync () nunca regresa y la aplicación se bloquea en la aplicación WinRT

Estoy intentando cargar y leer un archivo de configuración en el inicio de la aplicación, y aproximadamente el 90% del tiempo, elawait GetFileAsync("filename.xml"); Nunca vuelve, así, colgando la aplicación.

Aproximadamente una cuarta parte del tiempo, si paso por el código, realmente regresará y leerá el archivo.

Aquí hay una versión muy simplificada del código:

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
}

Si veo la ventana de salida en Visual Studio, después de un tiempo de espera, obtengo"The thread '<No Name>' (0x30c) has exited with code 0 (0x0)."

¿Alguien tiene alguna idea de lo que está pasando aquí?

Respuestas a la pregunta(1)

Su respuesta a la pregunta