我有一个测量仪器,可以创建指定时间的测量值。在此期间,我必须从内部存储器中获取测量值以防止溢出。目前我有这个:
public int FetchDatalog(int Time_s, double Period, out int Count, ref double[] Results)
{
Count = 0;
try
{
DateTime timeout = DateTime.UtcNow.AddSeconds(Time_s);
double[] values;
while (DateTime.UtcNow < timeout)
{
values = //here is the command to tell the instrument to return 10 results
Count = values.Count();
Thread.Sleep(500);
//HERE IS SOMETHING MISSING <-----
}
}
return 0;
}
所以我有一个函数可以循环读取仪器的 10 个结果,直到指定时间结束。在循环期间,必须合并读取的数据。
在箭头标记的位置,我现在需要将 10 个值合并在一起并最终在结果中返回所有合并值的东西。
我怎么能用未知的长度做到这一点?
(因为额外的问题是:10 个结果可以是“最多 10 个”结果。有时少于 10 个,所以如果需要只读取 1 个值,我也可以在这里更改,但这会使其变慢。
感谢所有帮助
在此处添加评论,使其可读 - Sayse
我的意思是合并:
loop1: values[]=1,2,3,4,5,6,7,8,9,0;
loop2: values[]=11,22,33,44,55,66,77,88,99,11
loop3: values[]=111,222,333,444,555,666,777,888,999,111
这三个值最终应该在参数结果中返回为
result[]=1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,
77,88,99,11,111,222,333,444,555,666,777,888,999,111
所以应该把它们组合成一个更大的数组。