如何确定 C# 中对象图中的对象是否可访问?
我有一个非常复杂的对象图 G,其中 G 中有一个对象 o1。 G 将使用 NHibernate 写入数据库。 但是,如果数据库中已经存在 o1 的持久条目(我们称之为 o…
.NET 中的 WeakReference 实现
我理解并欣赏 System.WeakReference 类的用处.NET 框架,但我对实现细节感到好奇。 WeakReference 在 .NET 中是如何实现的? MSDN 详细讨论了 WeakRef…
Microsoft 对象,Release() 函数返回值?
我很好奇,因为我在 MSDN 上找不到这方面的信息。 我发现 Release() 函数存在于各种 COM 对象中,显然我应该将其用于删除指针。 但我不确定它到底返回…
使用shared_ptr时如何检测循环
shared_ptr 是 Boost 库中的引用计数智能指针。 引用计数的问题是它无法处理循环。 我想知道如何用 C++ 来解决这个问题。 请不要提出诸如“不要循环”…
为什么 TInterfacedObject 的后代不被垃圾回收?
我有一个基于 TInterfacedObject 的类。 我将它添加到 TTreeNode 的 Data 属性中。 TFacilityTreeItem=class(TInterfacedObject) private m_guidItem:…
如何在C中实现线程安全引用计数
如何使用 C++ 编程语言在 X86 CPU 上实现高效且线程安全的引用计数系统? 我总是遇到这样的问题:关键操作不是原子的,并且可用的 X86 Interlock 操作…