问题标签 [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.

0 投票
3 回答
1049 浏览

wpf - WPF 调用在长方法处理期间不起作用

在第二种方法(DoWork)退出之前,以下方法不会应用 wpf 更改(背景 = 红色):

DoWork() 需要几秒钟才能运行,我真的不想将它放入线程中,因为此代码将在多个地方使用,并且可能会以不同的时间间隔与 Dispatcher 线程交互。我试过调用 Invalidate...() 方法,但无济于事。添加了 BeginInvoke() 以查看延迟是否允许在调用逻辑之前应用背景更改。通常,逻辑将是此方法的一部分。顺便说一句,大部分逻辑都是在不同的线程上执行的,不应该阻塞 Dispatcher 线程?!

有人可以帮忙吗?谢谢

0 投票
1 回答
5755 浏览

c# - 了解线程/BeginInvoke?[初学者]

考虑代码:

(1) 在单独的线程中轻松开始某些工作是一种可接受的方式吗?如果不是更好的选择,将不胜感激。

(2) 做同样的事情吗?我想我要问的是是否启动了一个新线程,或者..

希望你能帮助初学者更好地理解:)

/莫伯格

0 投票
3 回答
1492 浏览

c# - ObservableCollection 上的 BeginInvoke 不是立即的

在我的代码中,我订阅了在不同线程上发生的事件。每次发生此事件时,我都会收到一个发布到可观察集合的字符串:

下面的代码在我的视图模型中(可能在后面的代码中,在这种情况下无关紧要)。当我调用“hitstation.PrepareHit”时,上面的事件被调用了几次,然后我等待并调用“hitStation.HitBall”,上面的事件被调用了几次。

我遇到的问题是绑定到我的 SerialLog 的 ListBox 只有在 HitBall 方法完成时才会更新。我期待看到来自 PrepareHit 的一堆更新,一个暂停,然后是来自 HitBall 的更多更新。

我尝试了几个 DispatcherPriority 参数,但它们似乎没有任何效果。

0 投票
7 回答
6520 浏览

c# - 为什么我的 BeginInvoke 方法不是异步的?

为了避免 GUI 冻结,我想运行异步连接数据库的方法。因此我写了这个:

但它仍然很冷,我不明白为什么。我认为BeginInvoke确保调用的代码在另一个线程中运行。谢谢!

0 投票
2 回答
1396 浏览

c# - 更好的同步操作超时检测

我需要一种同步执行某些操作的方法,该操作应在半秒内完成,但可能只停留几分钟。如果超时,我不在乎结果。这是我现在正在使用编译器生成的委托。BeginInvoke:

看起来很丑。而且我知道 lambda 闭包的disposed变量已被修改(与我的 ReSharper 不同,我喜欢这个 C# 功能)。都是因为我想处置ManualResetEvent。你能在 .NET4 中提出更好的方法吗?也许我应该跳过处理事件并依赖 GC?

注意事项:ManualResetEvent.Set()如果您尝试在已处置的实例上执行此操作,则会爆炸。

0 投票
1 回答
248 浏览

winforms - BeginInvoke 不在 Release 构建中调用目标方法

我有一个方法,我希望在 UI 消息泵上执行,因此执行以下操作:

现在,当我创建项目的调试版本时,上面的工作就很好了。但是,当我创建发布版本时,不会调用“MethodToInvoke”方法。

有谁知道为什么会这样?

谢谢, 艾伦

0 投票
2 回答
756 浏览

.net - 在创建窗口句柄之前,不能对控件调用 Invoke 或 BeginInvoke

我收到此错误:在创建窗口句柄之前,无法在控件上调用 Invoke 或 BeginInvoke。

在这些线上:

我正在尝试使用 Application.Exit()

谁能帮我?

提前致谢

0 投票
2 回答
406 浏览

c# - 在 BeginInvoke 调用期间,@object 参数指的是什么?

在 BeginInvoke 线程池方法的示例使用中:

BeginInvoke 中的预期参数之一(最后一个)是:

@ 表示什么?

谢谢,

斯科特

0 投票
2 回答
2999 浏览

silverlight - 如何在处理时更新 Silverlight UI

我浏览了网上发布的几个示例,但我无法回答我的问题。

我的“p”变量在 for 循环中增加了 1。我希望 UI 显示计算进度(以显示“p”如何从 0 增加到 1000000)。我在单独的线程上进行计算,并调用调度程序来更新 UI 中的 ResultBox。例子:

}

由于某种原因,这不起作用。但是,当我将 Thread.Sleep(1) 放在 this.Dispatcher... 之前时,它会按预期工作。这是否意味着 UI 更新(调度程序)被调用太频繁,因此它冻结了?还有其他方法吗?

谢谢

0 投票
1 回答
681 浏览

wpf - WPF异步调用问题

我的代码有什么问题?它不是在删除文件时更新TextBoxProgressBar删除文件。