您正在创建一个使用非托管资源的类,这个类保持在其它对象上的有管理代码您应该确保这个类的使用者能在这个类不再使用时释放资源您应该执行哪三个动作?()A.定义类使得该类继承于WeakReference类。B.定义类使得该类实现IDisposable接口。C.创建类析构函数,该函数在其他对象上调用方法来释放托管资源。D.创建一个释放非托管资源的类析构函数。E.创建一个Dispose方法,该方法调用System GC Collect来强制进行垃圾回收。F.创建一个Dispose方法,该方法释放非托管资源,并在其他

题目
您正在创建一个使用非托管资源的类,这个类保持在其它对象上的有管理代码您应该确保这个类的使用者能在这个类不再使用时释放资源您应该执行哪三个动作?()

A.定义类使得该类继承于WeakReference类。

B.定义类使得该类实现IDisposable接口。

C.创建类析构函数,该函数在其他对象上调用方法来释放托管资源。

D.创建一个释放非托管资源的类析构函数。

E.创建一个Dispose方法,该方法调用System GC Collect来强制进行垃圾回收。

F.创建一个Dispose方法,该方法释放非托管资源,并在其他对象上调用方法来释放托管资源。


相似考题
更多“您正在创建一个使用非托管资源的类,这个类保持在其它对象上的有管理代码您应该确保这个类的使用者能在这个类不再使用时释放资源您应该执行哪三个动作?() ”相关问题
  • 第1题:

    为应用程序开发人员上班 Certkiller.com。创建一个新的类使用的非托管的资源,但其中仍有其他对象对托管资源的引用。您希望新类的用户能够不再需要的类的实例时,显式地释放资源。下一步你该怎么办?()选择您要执行的三个操作。每一个正确的答案显示唯一的完整的解决方案的一部分。

    A.定义的现有的类,以便使它从WeakReference类继承。

    B.定义的现有的类,以便它适用IDisposable接口。

    C.创建新的类析构函数,其他释放托管的资源的对象上调用方法。

    D.创建新类析构函数释放非托管的资源。

    E.创建一种新的处理方法调用System GC Collect,强制进行垃圾回收。

    F.创建一个新的处理方法,释放非托管的资源,并还呼吁释放托管的资源的其他对象方法,其中。


    参考答案:B, D, E
    它是要实现IDisposable接口,如果您需要释放非托管的资源,或者希望显式控制托管资源的使用寿命。应创建类析构函数释放非托管的资源,这应从调用Dispose方法内。Dispose方法也应释放托管的资源。 WeakReference从继承将导致垃圾回收器释放资源,即使可能有效的引用。 Dispose方法中,应释放托管的资源。可以使用System.GC.Collect,但它是更有效地手动释放托管的资源。GC招开销,并可能只是最近才被称为反正。应显式释放问题国家资源。

  • 第2题:

    您正在编写自定义字典。该自定义字典类名为MyDictionary。您需要确保该字典是类型安全的字典。您应该使用哪个代码段?()

    A.

    B.

    C.

    D.


    参考答案:A

  • 第3题:

    您将创建一个使用的非托管的资源的类。此类维护对其他对象的托管资源的引用。您需要确保这类的用户可以显式释放资源,当不再需要的类实例。您应执行哪三种操作?()

    A.定义,它从WeakReference类继承的类

    B.这样它实现IDisposable接口定义的类

    C.创建其他释放托管的资源的对象调用的方法的类析构函数

    D.创建释放非托管的资源的类析构函数

    E.创建调用 System GC Collect,强制进行垃圾回收的 Dispose 方法

    F.创建一个 Dispose 方法释放非托管的资源,并呼吁释放托管的资源的其他对象的方法


    参考答案:B, D, F

  • 第4题:

    您正在创建名为Age 的类。您需要确保编写的Age 类的对象所构成的集合能够被排序。您应该使用哪个代码段?()

    A.

    B.

    C.

    D.


    参考答案:C

  • 第5题:

    您需要通过使用平台调用服务从托管代码中调用非托管函数。您应该做些什么?()

    A.创建一个类支持DLL函数,然后使用托管代码创建原型方法。

    B.使用COM注册您的程序集,然后从COM中参考您的托管代码。

    C.为托管代码创建一个类库。

    D.导入一个类库。然后创建COM对象的实例


    参考答案:A