tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル CA2213の対処方法
投稿日: 2016/10/14(Fri) 10:12
投稿者オフディラン
開発環境:
Microsoft Windows 7 Professional
Visual Studio 2015
.Net Framework 4.5.2

2015のコード分析を実施した結果、警告「CA2213」がでます。
私なりに調べて、いろいろ試したのですが、解決できません。
どのようにすれば、いいのか教えて下さい。
よろしくお願いします。

-------------------------------------------------------------------------------
Imports System.Threading

Public Class Form1
    Private liTimer As Timer
    Private licenseDelegate As TimerCallback
    Public countZ As Integer

    Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
        liTimer.Dispose()
    End Sub

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        countZ = 0
        licenseDelegate = New TimerCallback(AddressOf CheckTest)
        liTimer = New Timer(licenseDelegate, Nothing, 1000, 1000)
    End Sub

    Private Sub CheckTest()
        countZ += 1
        Console.WriteLine(countZ)
    End Sub

End Class
-------------------------------------------------------------------------------

上記のように、タイマーで、カウントアップするだけのコードですが、
以下の警告がでます。

警告    CA2213    
'Form1' は、IDisposable 型 'Timer' であるフィールド 'Form1.liTimer' を含んでいます。
このフィールドで Dispose または Close を呼び出すには、'Form1' の Dispose メソッドを変更してください。

'Form1' の Dispose メソッドを変更とは、どのように実装すればいいのか、
具体的なサンプルがみつからず、また、私の理解不足で分かりません。

よろしくお願いします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。