问题标签 [begininvoke]
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.
wpf - WPF 调用在长方法处理期间不起作用
在第二种方法(DoWork)退出之前,以下方法不会应用 wpf 更改(背景 = 红色):
DoWork() 需要几秒钟才能运行,我真的不想将它放入线程中,因为此代码将在多个地方使用,并且可能会以不同的时间间隔与 Dispatcher 线程交互。我试过调用 Invalidate...() 方法,但无济于事。添加了 BeginInvoke() 以查看延迟是否允许在调用逻辑之前应用背景更改。通常,逻辑将是此方法的一部分。顺便说一句,大部分逻辑都是在不同的线程上执行的,不应该阻塞 Dispatcher 线程?!
有人可以帮忙吗?谢谢
c# - 了解线程/BeginInvoke?[初学者]
考虑代码:
(1) 在单独的线程中轻松开始某些工作是一种可接受的方式吗?如果不是更好的选择,将不胜感激。
(2) 做同样的事情吗?我想我要问的是是否启动了一个新线程,或者..
希望你能帮助初学者更好地理解:)
/莫伯格
c# - ObservableCollection 上的 BeginInvoke 不是立即的
在我的代码中,我订阅了在不同线程上发生的事件。每次发生此事件时,我都会收到一个发布到可观察集合的字符串:
下面的代码在我的视图模型中(可能在后面的代码中,在这种情况下无关紧要)。当我调用“hitstation.PrepareHit”时,上面的事件被调用了几次,然后我等待并调用“hitStation.HitBall”,上面的事件被调用了几次。
我遇到的问题是绑定到我的 SerialLog 的 ListBox 只有在 HitBall 方法完成时才会更新。我期待看到来自 PrepareHit 的一堆更新,一个暂停,然后是来自 HitBall 的更多更新。
我尝试了几个 DispatcherPriority 参数,但它们似乎没有任何效果。
c# - 为什么我的 BeginInvoke 方法不是异步的?
为了避免 GUI 冻结,我想运行异步连接数据库的方法。因此我写了这个:
但它仍然很冷,我不明白为什么。我认为BeginInvoke
确保调用的代码在另一个线程中运行。谢谢!
c# - 更好的同步操作超时检测
我需要一种同步执行某些操作的方法,该操作应在半秒内完成,但可能只停留几分钟。如果超时,我不在乎结果。这是我现在正在使用编译器生成的委托。BeginInvoke:
看起来很丑。而且我知道 lambda 闭包的disposed
变量已被修改(与我的 ReSharper 不同,我喜欢这个 C# 功能)。都是因为我想处置ManualResetEvent
。你能在 .NET4 中提出更好的方法吗?也许我应该跳过处理事件并依赖 GC?
注意事项:ManualResetEvent.Set()
如果您尝试在已处置的实例上执行此操作,则会爆炸。
winforms - BeginInvoke 不在 Release 构建中调用目标方法
我有一个方法,我希望在 UI 消息泵上执行,因此执行以下操作:
现在,当我创建项目的调试版本时,上面的工作就很好了。但是,当我创建发布版本时,不会调用“MethodToInvoke”方法。
有谁知道为什么会这样?
谢谢, 艾伦
.net - 在创建窗口句柄之前,不能对控件调用 Invoke 或 BeginInvoke
我收到此错误:在创建窗口句柄之前,无法在控件上调用 Invoke 或 BeginInvoke。
在这些线上:
我正在尝试使用 Application.Exit()
谁能帮我?
提前致谢
c# - 在 BeginInvoke 调用期间,@object 参数指的是什么?
在 BeginInvoke 线程池方法的示例使用中:
BeginInvoke 中的预期参数之一(最后一个)是:
@ 表示什么?
谢谢,
斯科特
silverlight - 如何在处理时更新 Silverlight UI
我浏览了网上发布的几个示例,但我无法回答我的问题。
我的“p”变量在 for 循环中增加了 1。我希望 UI 显示计算进度(以显示“p”如何从 0 增加到 1000000)。我在单独的线程上进行计算,并调用调度程序来更新 UI 中的 ResultBox。例子:
}
由于某种原因,这不起作用。但是,当我将 Thread.Sleep(1) 放在 this.Dispatcher... 之前时,它会按预期工作。这是否意味着 UI 更新(调度程序)被调用太频繁,因此它冻结了?还有其他方法吗?
谢谢
wpf - WPF异步调用问题
我的代码有什么问题?它不是在删除文件时更新TextBox
和ProgressBar
删除文件。