2014-10-25 3 views
2

Я использую библиотеку PCL Storage для своего приложения WP8. Я пытаюсь использовать пример интро с их сайта; https://pclstorage.codeplex.com/PCLStorage CreateFolderAsync hanging

код:

IFolder rootFolder = FileSystem.Current.LocalStorage; 
     IFolder folder = await rootFolder.CreateFolderAsync("MySubFolder", CreationCollisionOption.OpenIfExists); 
     IFile file = await folder.CreateFileAsync("answer.txt", CreationCollisionOption.ReplaceExisting); 
     await file.WriteAllTextAsync("42"); 

CreateFolderAsync функция зависания и не проходит. Я оба пробовал на симуляторе и устройстве.

Я что-то упустил?

ответ

5

Посмотрите еще раз на свой стек вызовов. Вы почти наверняка найдете вызов Task.Wait или Task<T>.Result, таким образом, causing a deadlock, который я описываю в своем блоге.

Для решения проблемы с заменой всех Wait и Result звонков с await. Я описываю это как «асинхронный весь путь» в моем async best practices MSDN article.

+0

Задача . Результат был именно причиной проблемы. Я пытался вернуть результат из функции async signed. Теперь он отлично работает. Я прочитаю ваше сообщение в блоге, чтобы узнать больше, спасибо! –