List<float> ListData1 = new List<float>(307200);
List<float> ListData2 = new List<float>(307200);
List<float> ListData3 = new List<float>(307200);
List<float> ListData4 = new List<float>(307200);
float[] data5 = new float[1228800];
try
{
data5 = (ListData1.Concat(ListData2).Concat(ListData3).Concat(ListData4)).ToArray();
}
catch (Exception ex)
{
Program.Logger.Info("camera1 data5 = (strListR.Concat(strListG).Concat(strListB)).ToArray();" + ex.Message); bRet = false; return bRet;
}
这个跟电脑内存大小有关,ToArray会开辟连续的空间。我复制运行你上面的代码,并没有引发异常。
float 4字节,你看看那些数组多少个*4,明显内存溢出,默认分配的堆大小不够造成的