invoke相关内容

delegate.Invoke 是如何工作的?

如果我在我的代码中创建一个委托,例如: delegate void dostuff (string o); 这会生成一个派生自 System.MulticastDelegate 的类,该类实现了三个方法 - Invoke、BeginInvoke 和 EndInvoke. 如果我查看为 Invoke 编译的 IL,我看到的是: .method public hidebysig newsl ..
发布时间:2022-01-18 12:41:40 C#/.NET

VB.NET 代表和调用 - 有人可以向我解释这些吗?

我是线程领域的新手,但我正在开发的应用程序的某些方面需要我使用 BackgroundWorker 控件来防止 UI 在执行某些文件操作时冻结. 我正在尝试从 BackgroundWorker 中更新几个表单标签.在我很快发现我无法访问不是在同一个线程中创建的控件之前从未使用过这个,所以经过一些研究,我实现了以下代码,似乎可以让一切正常工作: Private Delegate Sub Del ..
发布时间:2022-01-18 12:13:38 其他开发

C# 编译错误:“在创建窗口句柄之前,不能对控件调用 Invoke 或 BeginInvoke."

我刚刚发布了一个关于如何让代表更新另一个表单上的文本框的问题.就在我认为我使用 Invoke 得到答案的时候……这发生了.这是我的代码: 主窗体代码: 使用系统;使用 System.Drawing;使用 System.Collections;使用 System.ComponentModel;使用 System.Windows.Forms;使用 System.Data;使用 System.I ..
发布时间:2022-01-18 12:07:59 C#/.NET

Control.BeginInvoke 的 MethodInvoker 与 Action

哪个更正确,为什么? Control.BeginInvoke(new Action(DoSomething), null);私人无效DoSomething(){MessageBox.Show("多么棒的帖子");} 或 Control.BeginInvoke((MethodInvoker) 委托 {MessageBox.Show("多么棒的帖子");}); 我觉得我在做同样的事情,那么什么 ..
发布时间:2022-01-18 11:57:46 C#/.NET

调用和动态调用之间的区别

委托中的 Invoke 和 DynamicInvoke 有什么区别?请给我一些代码示例来解释这两种方法之间的区别. 解决方案 当你有一个委托实例时,你可能知道确切的类型,或者你可能只知道它是一个 Delegate.如果您知道确切的类型,则可以使用 Invoke,它非常快 - 一切都已预先验证.例如: Func两次 = x =>x * 2;诠释 i = 3;int j = 两次.Invok ..
发布时间:2022-01-18 11:52:53 C#/.NET

不管 InvokeRequired 调用 Invoke 有什么问题?

我已经看到了对 GUI 控件进行跨线程访问的常见设置,如下所述:最短的写法对 Windows 窗体控件的线程安全访问方法 我发现的所有网络点击都描述了类似的事情. 但是,为什么我们需要检查 InvokeRequired?我们不能直接调用 Invoke 吗? 我假设答案是否定的,所以我真正的问题是“为什么"? 解决方案 从非 UI 线程我们无法触摸 UI - 可能会发生非常 ..
发布时间:2022-01-15 11:26:57 C#/.NET

COM 对象方法不在 CoInitialize-d 并创建对象的线程上执行

我正在开发一个 UI 应用程序,它会一路创建一个 COM 对象.问题是,我想将这个 COM 对象完全“移动"到另一个线程上. 我的做法是这样的: 创建我想将对象移动到的新线程(使用 CreateThread API) 进入本帖后,我调用 PeekMessage 为其设置消息队列 调用CoInitialize,CoCreateInstance创建COM对象,QueryInterfac ..
发布时间:2022-01-14 12:19:53 其他开发

跨线程操作在 Windows 窗体中无效

谁能帮助我我有一个问题我试图通过线程池让这段代码在后台工作,但我似乎无法让它工作我一直收到这个错误: 跨线程操作无效:已访问控件“ListBox3"来自创建它的线程以外的线程. 这是我正在使用的代码: private void DoWork(object o){var list = ListBox3;var request = createRequest(TxtServer.Text, We ..
发布时间:2022-01-09 11:20:54 C#/.NET

参数计数与 Invoke 不匹配?

下面的代码块导致错误:TargetParameterCountException 未被用户代码处理.参数计数不匹配. public void AddListViewItem(string[] Data){如果(调用必需){Invoke(new Action(AddListViewItem), Data);}别的{ListViewData.Items.Add(Data[0]).SubItems. ..
发布时间:2021-12-29 19:58:06 C#/.NET

如何在 .NET 中使用反射调用重载方法

有没有办法在 .NET (2.0) 中使用反射来调用重载方法.我有一个动态实例化从公共基类派生的类的应用程序.出于兼容性考虑,该基类包含 2 个同名方法,一个带参数,一个不带参数.我需要通过 Invoke 方法调用无参数方法.现在,我得到的只是一个错误,告诉我我正在尝试调用一个不明确的方法. 是的,我可以将对象转换为我的基类的实例并调用我需要的方法.最终,这种情况会发生,但目前,内部复杂情况 ..
发布时间:2021-12-26 14:34:26 C#/.NET

如何使用反射 (Java) 调用私有静态方法?

我想调用一个私有静态方法.我有它的名字.我听说可以使用 Java 反射机制来完成.我该怎么做? 编辑:我在尝试调用该方法时遇到的一个问题是如何指定其参数的类型.我的方法接收一个参数,它的类型是 Map.因此我不能做 Map.TYPE (在运行时,由于 Java 类型擦除,没有 Map 这样的东西).有没有其他方法获得方法? 解决方案 假设你想调用 MyClass.myMethod(i ..
发布时间:2021-12-26 14:19:48 Java开发

通过反射调用带有可选参数的方法

我在使用带有可选参数的 C# 4.0 时遇到了另一个问题. 如何调用我知道不需要任何参数的函数(或者更确切地说是构造函数,我有 ConstructorInfo 对象)? 这是我现在使用的代码: type.GetParameterlessConstructor().Invoke(BindingFlags.OptionalParamBinding |BindingFlags.Invoke ..
发布时间:2021-12-26 14:18:05 C#/.NET

反射 MethodInfo.Invoke() 从方法内部捕获异常

我调用了 MethodInfo.Invoke() 以通过反射执行函数.该调用包含在 try/catch 块中,但它仍然无法捕获我正在调用的函数抛出的异常. 我收到以下消息: 用户未处理异常. 为什么 MethodInfo.Invoke() 会阻止在 Invoke() 之外捕获异常? 我该如何绕过它? 解决方案 编辑:据我了解您的问题,该问题纯粹是 IDE 问题;您不喜欢 ..
发布时间:2021-12-23 09:02:45 C#/.NET

BroadcastReceiver 和 Activity 之间的通信 - android

我的应用程序中有一个广播接收器,每次用户接到来电时都会触发它.现在,当它发生时,我需要广播接收器在特定活动中调用特定方法.现在,我尝试将这个方法设为静态并因此可用,但有些事情告诉我这是一个非常糟糕的主意. 因此,我尝试在我的 Activity 中实例化广播接收器,而不在我的清单中声明它,但问题是 - 当应用程序关闭时,该 Activity 不存在,因此我无法调用我的方法. 所以我的问题 ..

反思:如何使用参数调用方法

我试图通过带参数的反射调用一个方法,我得到: 对象与目标类型不匹配 如果我调用一个没有参数的方法,它工作正常.如果我调用方法 Test("TestNoParameters"),基于以下代码,它工作正常.但是,如果我调用 Test("Run"),则会出现异常.我的代码有问题吗? 我最初的目的是传递一个对象数组,例如public void Run(object[] options) ..
发布时间:2021-12-23 08:48:57 C#/.NET

不管 InvokeRequired 是什么,调用 Invoke 有什么问题?

我已经看到了跨线程访问 GUI 控件的常见设置,例如这里讨论的:最短的写法一种对windows窗体控件的线程安全访问方法 我发现的所有网络点击都描述了类似的事情. 但是,为什么我们需要检查 InvokeRequired?不能直接调用Invoke吗? 我认为答案是否定的,所以我真正的问题是“为什么"? 解决方案 从非 UI 线程,我们无法触及 UI - 可能会发生非常糟糕的 ..
发布时间:2021-12-13 10:52:46 C#/.NET