问题标签 [dynamic-invoke]
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.
c# - 如何将对象数组作为单个参数传递给方法?
我有以下代码:
这种方法的问题在于 m_args 本身就是一个对象,并且它的内容没有被展平到单独的参数条目中。我怎样才能解决这个问题?
c# - __DynamicallyInvokable 属性有什么用?
在DotPeekSystem.Linq.Enumerable
中查看时,我注意到某些方法带有[__DynamicallyInvokable]
属性。
这个属性起什么作用?它是由 DotPeek 添加的还是起到了其他作用,也许会告知编译器如何最好地优化方法?
c# - 调用和动态调用之间的区别
委托中的 Invoke 和 DynamicInvoke 有什么区别?请给我一些代码示例来解释这两种方法之间的区别。
vb.net - 添加组播委托并使用 DynamicInvoke() 调用
我有当前代码,可以使用委托打印输入数字的数学结果。
Module Module1
Dim a As Decimal
Dim b As Decimal
Dim Answer As Integer
我需要添加一个包含所有四个过程的多播委托,并使用 DynamicInvoke() 方法调用这些过程。
java - 如何为具有变体参数的方法构造 MethodType
我未能为 Java 中的方法查找创建 MethodType。下面是我的代码。在这段代码中,我想为 sample::gwd 方法创建一个 MethodType,然后通过 lookup().findStatic 检索对该函数的引用。很明显,我无法获得方法参考,因为 MethodType 构造错误。
有谁能帮忙吗?谢谢
c# - 动态调用和睡眠线程
我有一个关于动态调用和线程的问题。假设我有一个主线程,在某些时候会显示一个对话框。
当我显示 Dialog 时,我的 mainThread 获取 mutexObject 并停止,直到用户单击接受按钮。所以我的主线程正在睡觉。如果用户不按下按钮并且我们等待另一个线程中引发事件。该事件使用 dynamicInvoke 调用前一个函数。在这种情况下 mainThread getUp 如果我不使用 flagDialog 它将显示第二个对话框。这是正确的吗?如果线程没有休眠,dynamicInvoke 会做什么?它会等到 mainThread 停止?如果我关闭这两个对话框,它如何知道在哪里继续执行会发生什么?它堆叠了不同的调用栈并知道如何恢复旧的上下文?
非常感谢。
java - Java 方法句柄:跨函数传播未绑定的参数
我想创建一个方法句柄,允许我将一个值作为参数传递,该值将绑定到方法句柄树下的占位符。
如图,类似这样:f(x) = plus( minus( x, 2), 3)
其中 x 在调用时传递,2 和 3 是一些常量 MethodHandles,它们总是返回 2 或 3。
我遇到了一个我不明白的问题:
这在尝试过滤 plus_3 时返回异常:
我不明白的是,我如何用减号组合加号,其中减号有一个尚未完成的论点。
你能帮助我吗?
c# - 使用 Task.Factory.StartNew 动态调用方法时,新 CookieContainer 上的线程被取消
我首先在文件夹中加载一些 dll 并将Core
类的实例与名称一起存储为 a 中的键Dictionary<string, object>
,如下所示:
更多的事件处理方法,atm 只是傻瓜:
稍后,我将Download
使用其各自的参数调用该方法:
包含在 dll 中:
到这里一切正常......
“奇怪”的事情是,这只发生在我尝试异步运行方法时,单线程工作得很好。
另外我已经检查过多次,我传递给任务的令牌没有被取消,除此之外,甚至在任务构造函数中都没有使用令牌。
我怀疑它与动态加载和调用 dll 有关。
c# - 为方法装饰构建表达式树?
我正在构建一个名为的类,该类CommandHandler
具有作为输入参数的ExecuteCommand
方法。Command
想法是ExcecuteCommand
检查命令名称并通过名称模式执行正确的类方法,因此当命令名称为Test
类时应该有相应的TestHandler
方法。
在初始化时,我使用反射来查找所有方法并在命令名称和 created 之间创建映射Func<Command, Task<object>>
。现在我已经通过让所有方法返回Task<object>
并用于从反射方法Delegate.CreateDelegate
创建来实现这一点,Func<Command, Task<object>>
但我想清理代码并允许方法返回简单类型,如 int 或Task<custom class>
.
我想构建一些简单的表达式,对于简单类型将执行方法并Task.FromResult
动态执行,以便类方法保持干净。对于具有特定类型结果的任务,我想创建将产生的表达式,Task<object>
以便所有内容都可以缓存为Dictionary<string, Func<Command, Task<object>>
.
我没有使用表达式的经验,我发现的大多数示例都使用基本运算符和静态方法。也许有人可以帮助我如何建立这样的表达?
c# - 真的没有办法从包含带有方法体的 IL 的 byte[] 中“生成”C#?
我一直在玩弄一些模糊代码的逆向,我偶然发现了一个棘手的 DLL,它在 byte[] 数组中有一个“方法体”(IL 代码),后来用动态调用来调用它。分析 MSIL 是唯一的方法吗?你如何处理这些?
我花了几个小时在线研究工具,使我能够从字节数组中的 IL 生成 C# 代码(至少是一些基础知识)。真的没有吗?
如果那里存在某些东西会很棒,使用上面的一些基本 MSIL 可以生成 a + b。