首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加载SyndicationFeed和异步/等待

加载SyndicationFeed和异步/等待
EN

Stack Overflow用户
提问于 2016-05-18 13:45:11
回答 2查看 1.6K关注 0票数 4

我们可以通过异步/等待方式阅读RSS吗?

代码语言:javascript
复制
XmlReader reader = XmlReader.Create("http://localhost/feeds/serializedFeed.xml");
SyndicationFeed feed = SyndicationFeed.Load(reader);

有线索吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-17 14:22:35

您的解决方案不使用异步/等待,代码太多,我怀疑在某些情况下,您的方法容易出现死锁。

只需这样做

代码语言:javascript
复制
var reader = XmlReader.Create("http://localhost/feeds/serializedFeed.xml");
var feed = await Task.Run(() => SyndicationFeed.Load(reader));
票数 2
EN

Stack Overflow用户

发布于 2016-05-18 14:11:17

好的,伙计们,这是解决方案

代码语言:javascript
复制
private  void   GetRSS(string rssUrl)
        {
            Task.Factory.StartNew(() => {
                using (XmlReader r = XmlReader.Create(rssUrl))
                {
                    SyndicationFeed feed = SyndicationFeed.Load(r);
                    Action bindData = () => {
                        lstFeedItems.ItemsSource = feed.Items;
                    };
                    this.Dispatcher.InvokeAsync(bindData);
                }
            });
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37301503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档