相关疑难解决方法(0)

GCHandle获取.net对象的地址(指针)

我设法得到一个.net对象的地址

GCHandle objHandle = GCHandle.Alloc(obj,GCHandleType.WeakTrackResurrection);
int address = GCHandle.ToIntPtr(objHandle).ToInt32();  
Run Code Online (Sandbox Code Playgroud)

我可以通过回忆起这个对象

Object obj = GCHandle.FromIntPtr(IntPtr(address)).Target;
Run Code Online (Sandbox Code Playgroud)

好吧,目的是将地址存储在本机类中,并具有哪个本机对象与哪个.net对象相关联的信息.
AFAIK地址不会因为分配而改变,是真的还是有人有更好的想法来实现我的目的?

谢谢

.net c# pointers memory-management memory-address

5
推荐指数
2
解决办法
2万
查看次数

标签 统计

.net ×1

c# ×1

memory-address ×1

memory-management ×1

pointers ×1