System.Security.Cryptography.RNGCryptoServiceProvider.Dispose C# (CSharp) Method

Dispose() protected method

protected Dispose ( bool disposing ) : void
disposing bool
return void
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                _impl.Dispose();
                base.Dispose(disposing);
            }
        }
    }

Usage Example

Beispiel #1
0
        private int[] 親からランダムな交叉(int[] geneA, int[] geneB, int パラメータ数)
        {
            //Int32と同じサイズのバイト配列にランダムな値を設定する
            //byte[] bs = new byte[sizeof(int)];
            byte[] bs = new byte[4];
            System.Security.Cryptography.RNGCryptoServiceProvider rng = new System.Security.Cryptography.RNGCryptoServiceProvider();
            rng.GetBytes(bs);
            //Int32に変換する
            int seed = System.BitConverter.ToInt32(bs, 0);
            // そのseedを基にRandomを作る
            var r = new Random(seed++);

            int[] gene = new int[パラメータ数 + 他の要素];

            for (int i = 0; i < パラメータ数; i++)
            {
                if (r.Next(2) == 1)
                {
                    gene[i] = geneA[i];
                }
                else
                {
                    gene[i] = geneB[i];
                }
            }
            bs = null;
            rng.Dispose();
            r = null;
            return(gene);
        }
All Usage Examples Of System.Security.Cryptography.RNGCryptoServiceProvider::Dispose