【发布时间】:2012-09-12 13:47:27
【问题描述】:
在询问manually managing CLR memory的过程中,我意识到我知道的很少。
我知道,当您退出托管上下文时,CLR 会在堆栈上放置一个“cookie”,这样垃圾收集器就不会占用您的内存空间;但是,在我读过的所有内容中,假设您正在调用一些用 C 编写的库。
我想在托管上下文之外用 C# 编写应用程序的整个写入层,以在低级别管理数据。然后,我想从托管层访问该层。
在这种情况下,我的非托管 C# 代码会编译为 IL 并在 CLR 上运行吗?这是如何工作的?
【问题讨论】:
-
您提到用 C# 编写非托管代码。我假设您的意思是这不同于调用非托管代码来自 C#。如果是这样,我想看一个例子来说明你的意思。
-
根据 oleksii 的回答,我正在寻找的东西根本不存在。因此,我无法向您展示一个示例。