裏口からのC#実践入門

1-8 解放されない参照

使い終わったあとにnullいれないと解放されないのでOut of memory出ちゃうよって話。

using System;
using System.Linq;
using System.Collections.Generic;

namespace Uraguchi
{
    public class Tenshi8
    {
        private int[] array;
        private int sum;

        public Tenshi8(int max)
        {
            array = Enumerable.Range(0, max).ToArray();
            calc();
            array = null;
        }

        private void calc()
        {
            sum = array.Sum();
        }
    }
}

f:id:yossk:20150128232437j:plain