【发布时间】:2021-10-13 20:38:35
【问题描述】:
为了解决不寻常的情况,我需要一个执行此操作的函数:
object Identity(object x) { return x; }
它可以解决我无法更改的第三方库的问题。我真的不想为了介绍这个功能而创建一个新的 .NET DLL 文件。在任何标准的 .NET 库中是否有类似的东西?
我没有编写任何 .NET 代码。我正在从另一个包装器环境调用库。我所能做的就是发送命令来实例化对象或调用对象的方法/属性。没有地方我可以为自己编写这个函数。这个标识函数将帮助我避免调用环境的垃圾收集器认为可以释放对象。
【问题讨论】:
-
您需要一个函数来返回您传递给它的一个参数...?
-
您能描述一下您面临的问题吗?您要求的解决方案似乎微不足道。语言和库没有您描述的 独立 功能。它很容易编写(正如您在问题中发现的那样)。你写的那个有什么问题吗?另一种方法是说
Func<object, object> Identity = x => x。 -
它将如何解决您的问题,这是什么问题?为什么不能自己写方法,或者使用匿名函数,lambda
x => x? -
我认为这不会阻止 GC 释放您的对象。你只需要一个持久对象来指向它
-
这个问题正在meta讨论。