我在接受采访时被问到这个问题,我说答案是管理的。面试官似乎很惊讶。我的问题是即使它访问一个文件(本机/非托管资源),但这个类是不是托管?或者您认为我应该有一些后续问题以获得更多澄清?
答案 0 :(得分:1)
根据ILSpy,FileStream
包含大量托管代码,因此您可以认为它是受管理的。但是,最终所有文件I / O必须解析为Win32 P / Invoke调用,因此您可能会认为它是一个非托管代码包装器。这取决于你的定义。
答案 1 :(得分:0)
答案 2 :(得分:0)
通常,CLR运行的所有代码都被视为至少在您的透视图中被管理,在它之外,您有Win32 API,ActiveX,COM对象,这些是非托管的。
AS FileStream是.Net的一个类,所以它是一个托管类/对象。但由于这个原因,它的一些Windows资源是无人管理的,你必须在使用它之后处理它的对象。