如何防止保存数据导致Windows Phone死机?

时间:2014-12-07 11:09:51

标签: c# windows-phone-8 asynchronous

我是一个在数据库中插入异步的函数。 ,该函数是在后台传输状态调用时调用的,有时会导致死锁

    await vm.InsertVerseDownloadProgress_Bulk(tracks.Cast<QuranVerseTrack>().ToList()).ConfigureAwait(true);

    await vm.InsertVerseDownloadProgress_Bulk(tracks.Cast<QuranVerseTrack>().ToList()).ConfigureAwait(false);

    await vm.InsertVerseDownloadProgress_Bulk(tracks.Cast<QuranVerseTrack>().ToList()).ConfigureAwait(true);

我不确定使用哪一个

1 个答案:

答案 0 :(得分:0)

ConfigureAwait(true)是默认值,会导致您的任务编组回到它所启动的线程。

死锁主要是由于在UI内部等待结果导致的(等待,而不是等待;通过调用task.wait或task.result)。

如果没有进一步的背景,你的问题就无法回答。