首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >力DispatcherTimer滴答

力DispatcherTimer滴答
EN

Stack Overflow用户
提问于 2013-09-06 08:37:03
回答 2查看 559关注 0票数 0

我需要发送一个大约每分钟一次的服务器请求,以获得一个新的产品列表(如果它是通过网络更改)。

所以我用的是DispatcherTimer

代码语言:javascript
复制
public static void Start()
    {
        if (timer != null) return;

        timer = new DispatcherTimer {Interval = TimeSpan.FromSeconds(0.1)};
        timer.Tick += Run;
        timer.Start();
    }

private static async void Run(object sender, EventArgs e)
    {
        timer.Interval = TimeSpan.FromSeconds(60); // TODO" add dynamic changes here
        timer.Stop();
        ** Do stuff
        timer.Start();
    }

然而,有时,我需要强制更新。跑得对吗?

代码语言:javascript
复制
public static void ForceUpdate()
    {
        Run(null, null);
    }

编辑:我的意思是,如果做事情足够长,难道不是第二次通过计时器调用吗?或者也许我该用点别的东西来做这种工作?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-06 11:25:25

啊,嗯,这很简单

代码语言:javascript
复制
        public static void ForceUpdate()
        {
            timer.Stop();
            timer.Interval = TimeSpan.FromMilliseconds(10);
            timer.Start();
        }
票数 0
EN

Stack Overflow用户

发布于 2013-09-06 08:45:12

编辑:插入一个变量,它应该存储最后的更新时间,并检查更新是否在一定的时间间隔内完成。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18653419

复制
相关文章

相似问题

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