相关疑难解决方法(0)

处理时托管资源和本机资源有什么区别?(.净)

我正在阅读有关如何实现IDisposable的MSDN文章,我不确定文章中引用的托管和本机资源之间的区别.

我有一个类在处理时必须处理它的两个字段.我应该将它们视为托管(仅在处置= true时处置)或本机资源吗?

.net resources idisposable native

25
推荐指数
2
解决办法
8602
查看次数

什么时候不应该实现IDisposable?

首先,对不起,如果这被认为是重复 - 我知道这是一个共同的话题,但我看了,但没有找到一个满意的答案.

有很多的问问题时要使用IDisposable,但一切我读过,我只是不明白为什么你不会在你的每类实现它.有什么可失去的?它是否有很大的性能影响?

我理解的部分原因IDisposable是它所做的一件事是: Dispose()对象拥有的其他IDisposable.原谅我的无知,但这只适用于给定对象的字段/属性,还是也扩展到在其方法中创建的对象?

例如,如果a Font是在实现的类中的方法内创建的IDisposable,但是Font没有使用using块初始化,或者.Dispose()在方法的末尾显式地创建; 当它的IDisposable父母/班级被GCd /处置时会被处置吗?否则,Font永远不会被处置?

我并不是要离题,但如果确实这样做会像这样"抓住一切"(有效地处理任何IDisposable本来不会留下的错误的儿童对象),那么单凭这个理由不足以证明这一点.总是IDisposable尽可能地实施?

.net c# memory-leaks memory-management idisposable

3
推荐指数
1
解决办法
1424
查看次数

配置类vb.net

我看到很多关于如何处理课程的"教程",但是我无法理解加上所有这些都是在c#中解释而不是在vb.net中我知道它非常相似但似乎我能得到它并且我不知道我知道为什么

所以我的问题是:如何在这个类中实现IDisposable

    Public Class Container

    Private _sItemName As String
    Private _sPrice As Single
    Private _sPriceTot As Single
    Private _iNumber As Integer

    Sub New(ByVal _sItemName As String, ByVal _sPrice As Single, ByVal _sPriceTot As Single, ByVal _iNumber As Integer)
        Me._sItemName = _sItemName
        Me._sPrice = _sPrice
        Me._iNumber = _iNumber
        Me._sPriceTot = _sPriceTot
    End Sub

    Public Property sItemName() As String
        Get
            Return _sItemName
        End Get
        Private Set(value As String)
            _sItemName = value
        End Set
    End Property

    Public Property sPriceTot() As Single
        Get
            Return …
Run Code Online (Sandbox Code Playgroud)

.net vb.net idisposable

2
推荐指数
1
解决办法
9939
查看次数