问题标签 [dispatchertimer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
586 浏览

c# - CompositionTarget.Rendering & DispatcherTimer

CompositionTarget.Rendering 和 DispatcherTimer 不能共存吗?我有一个通过注册到 CompositionTarget.Rendering 和其他地方我有 DispatcherTimer 来更新的控件。计时器根本没有触发,经过一些试验和错误后,当我删除 CompositionTarget.Rendering 时,计时器再次工作。这两者都有限制吗?如果是这样,其背后的原因是什么?如果没有,任何想法为什么在我的情况下是这样的?我的渲染还没有密集,所以这不是原因。即使是这种情况,计时器仍应触发,但速度比我想要的慢得多,而不是完全不触发。想法?

谢谢

0 投票
1 回答
2329 浏览

c# - 调度程序计时器冻结 WPF

我正在为 AR Drone(四旋翼无人机)设计一个 3 DOF 控制应用程序。我正在使用多个 PID 控制器来控制无人机 ..这些控制器是通过使用调度程序计时器类实现的 .. 例如在程序开始时我像这样初始化调度程序计时器:

只要用户按下 GUI 上的按钮,就会触发该计时器。

在 timer_yaw_tick 我做了一点处理:

现在在我的应用程序中,大约有 7 个计时器正在运行,它们以不同的时间间隔触发......(计时器持续时间主要以所有计时器的毫秒数为单位)

我面临的问题是我的代码有时运行良好,但有时应用程序完全冻结,即没有任何响应......这真的让我发疯了,我似乎无法弄清楚问题......我使用的是正确的吗工作计时器???

非常感谢您的帮助.. Thnx

0 投票
1 回答
1338 浏览

c# - 无法停止 DispacherTimer

我在 wpf 中编写了一些代码,如果光标静止几秒钟,我有一个执行点击的鼠标。如果我打开一个我创建的新 wpf 窗口,我想停止点击……但似乎调度员不会停止,即使我几乎尝试了一切......有什么办法吗?

当打开新表单时,我将 bool Form1opened=true 设置为 true,但即使它进入 if,调度程序也不会停止......提前谢谢......

0 投票
1 回答
6891 浏览

c# - 异步友好的 DispatcherTimer 包装器/子类

我的代码中有一个DispatcherTimer运行,每 30 秒触发一次以从服务器更新系统状态。即使我正在调试我的服务器代码,计时器也会在客户端触发,所以如果我已经调试了 5 分钟,我最终可能会在客户端出现十几个超时。最后决定我需要解决这个问题,所以希望制作一个更async/await友好的 DispatcherTimer。

  • 运行的代码DispatcherTimer无论是否可重入都必须是可配置的(即,如果任务已经在运行,则不应尝试再次运行它)
  • 应该是基于任务的(这是否需要我实际上在根处公开任务是一个灰色区域)
  • 应该能够运行异步代码并await完成任务
  • 是否包装或扩展 DispatcherTimer 可能并不重要,但如果您不知道如何使用它,包装它可能会稍微不那么含糊
  • IsRunning可能为 UI公开可绑定属性
0 投票
2 回答
579 浏览

.net - 使用调度程序计时器 + 使用 VB.NET 的秒表执行时获得不正确的计时

在这里,我将时间变量初始化为 0,并用于StopWatch计算毫秒数并DispatcherTimer更新 UI

问题是所有变量的第一个实例的增量时间是我预期的实际时间的 1/2。

例如 seconds.text 在第 500 毫秒更新为 1,下一个在 1000 毫秒后更新

同样,Minutes.text 在第 30 秒后更新为 1,然后在 60 秒后正常递增

与小时和天相同,但仅在第一个实例之后,它在正常间隔后递增

那么任何人都可以帮我找出逻辑错误吗?


我想知道如何反转过程并倒计时?

你们能帮我解决我可以实现的想法/逻辑吗?

0 投票
2 回答
768 浏览

.net - 倒计时不起作用(使用秒表类 + 调度器定时器)

我正在启动小时、分钟和秒

然后将其转换为总毫秒数。

然后我正在做的是从 Elapsed MilliSeconds 中减去 Total MilliSeconds

IEelms = cms - e.Milliseconds

(评估的毫秒 = 计算的毫秒。- Stopwatch.elapsedMilliseconds)

然后将评估的毫秒转换回 HH:MM:SS:MS 格式。

但由于一些逻辑错误,它无法正常工作,这就是为什么我需要一些帮助。请帮帮我这是我的代码:

0 投票
2 回答
841 浏览

c# - c# dispatcher timer 和 System.TImers.Timer 过早触发

我在 msdn 上读到,虽然计时器不能保证以确切的间隔(在我的情况下为 1 秒)触发,但它们不会在间隔之前触发。

一台电脑上的计时器工作正常(Windows 7),而另一台电脑(Windows Server 2003)上的每个0.99999936 seconds.

我真的很感兴趣为什么会这样。

我注意到了这一点,因为我有代码计数秒到newSeconds = newSeconds + delta.Seconds Where deltaisDateTime.Now - lastTime

秒部分显示1在 Windows 7 和0Windows Server 2003 上。

解决方案是 read totalseconds,但我仍然想知道为什么它之前会触发。

谁能详细说明这一点?

编辑

我实际上在两个不同的 Windows 2003 电脑上发生了这种情况。我想更深入地了解操作系统之间是否存在差异,.net framework 4 对于 7 和 2003 是否不同?或者人们可能知道的任何其他偏差?计时器是如何实现的,可能是硬件相关问题吗?

与此相反: C# 计时器在它们的间隔时间之前被触发, 我一直在发生它,在每个滴答声中。无需长时间运行。谢谢

编辑

0 投票
1 回答
1594 浏览

c# - 获取从调度程序计时器事件处理程序返回的值?

我如何在调用位置获取从事件处理程序返回的值?我想做的是这样的

0 投票
2 回答
4511 浏览

vb.net - X秒后触发事件

我正在为 Windows Phone 开发一个应用程序。我的问题是如何在 2 秒后触发事件?

我使用 Visual Basic 作为我的语言来开发它。任何帮助将非常感激。

0 投票
2 回答
5856 浏览

c# - 在 Dispatchertimer.Tick 事件中发送一个额外的参数

我的问题是如何在 Dispatchertimer.Tick 事件中发送一些参数,这里是代码:我想要的是在 dispatcheTimer_Tick 接收一个整数值

我想做的是这样的

如何从调用点发送值?