需求描述:

需要实现采集中,始终保持最近10次的数据

描述分析:

当采集第一次数据的存储的时候,开辟一个长度为11的list,和一个标记为来记录当前的采集轮询次数(记录1-10,第11次数值归1)

数据结构:
public int Flag { get; set; }
/// <summary>
/// 现在需求是要存储10次采集的丢包次数,一次采集为10个包
/// 这里规定Data[0]为10次采集的丢包总数,Data[1]-Data[10]为每次采集的丢包数
/// 每采集满10,Flag归1,Data[0]减去原有Data[1]的数据,加上新采集的数据,数据存入Data[1]
/// </summary>
public List<int> Data { get; set; }

代码实现:

List<int> data = cameralist[i].LoseData.Data;
if (cameralist[i].LoseData.Flag + 1 >= 10)
{
data[0] = data[0] - data[1] + cameralist[i].LosePacket;
cameralist[i].LoseData.Flag = 0;
}
else
{
data[0] = data[0] - data[cameralist[i].LoseData.Flag + 1] + cameralist[i].LosePacket;
}
data[cameralist[i].LoseData.Flag + 1] = cameralist[i].LosePacket;
camera.LoseData = new LosePacketData
{
Flag = cameralist[i].LoseData.Flag + 1,
Data = data
};
updatalist.Add(camera);

关于存储最近N次数据的问题的实现的更多相关文章

  1. JavaScript-cookie是客户端本地,持久存储用户私密数据的文件

    navigator:封装浏览器配置信息的对象 cookieEnabled:判断浏览器是否启用cookie cookie是什么:cookie是客户端本地,持久存储用户私密数据的文件 plugins:包含 ...

  2. memcache 存储单个KEY,数据量过大的时候性能慢!以及简单的memcache不适合用到的场景

    今天有人问到我:memcache存储大数据量,10K,100K,1M的时候,效果怎么样??我回答:不好,效果非常慢.对方问:为什么啊??我回答不上来...于是就找了点资料. memcached使用需要 ...

  3. 用hdfs存储海量的视频数据的设计思路

    用hdfs存储海量的视频数据 存储海量的视频数据,主要考虑两个因素:如何接收视频数据和如何存储视频数据. 我们要根据数据block在集群上的位置分配计算量,要充分利用带宽的优势. 1.接收视频数据 将 ...

  4. SQLite数据库如何存储和读取二进制数据

    SQLite数据库如何存储和读取二进制数据 1. 存储二进制数据 SQLite提供的绑定二进制参数接口函数为: int sqlite3_bind_blob(sqlite3_stmt*, int, co ...

  5. 如何使用Cassandra来存储time-series类型的数据

       Cassandra非常适合存储时序类型的数据,本文我们将使用一个气象站的例子,该气象站每分钟需要存储一条温度数据. 一.方案1,每个设备占用一行      这个方案的思路就是给每个数据源创建一行 ...

  6. hbase数据加盐(Salting)存储与协处理器查询数据的方法

    转自: https://blog.csdn.net/finad01/article/details/45952781 ----------------------------------------- ...

  7. [19/05/07-星期二] JDBC(Java DataBase Connectivity)_CLOB(存储大量的文本数据)与BLOB(存储大量的二进制数据)

    一. CLOB(Character Large Object ) – 用于存储大量的文本数据 – 大字段有些特殊,不同数据库处理的方式不一样,大字段的操作常常是以流的方式来处理的.而非一般的字段,一次 ...

  8. 临时存存储页面上的数据---Web存储

    HTML5 Web存储的两种方法使用 localStorage和sessionStorage 参考: http://www.cnblogs.com/taoweiji/archive/2012/12/0 ...

  9. 使用text存储hash类型的数据 Use text filed to store the hash map

    在component表里用text类型的字段存储hash数据 (1)新建字段 ,这是migration的内容 class AddHintsToComponents < ActiveRecord: ...

  10. php里少用到的session_module_name,以及session的key值限制,简单将session存储为json格式数据的方法

    这个函数的作用就是动态的设置php.ini里的session_save_handler,配合session_set_savepath可以在程序里自由配置session的后台方式. session_ca ...

随机推荐

  1. [bzoj2186] [洛谷P2155] [Sdoi2008] 沙拉公主的困惑

    Description 大富翁国因为通货膨胀,以及假钞泛滥,政府决定推出一项新的政策:现有钞票编号范围为1到N的阶乘,但是,政府只发行编号与M!互质的钞票.房地产第一大户沙拉公主决定预测一下大富翁国现 ...

  2. Collections.synchronizedList 、CopyOnWriteArrayList、Vector介绍、源码浅析与性能对比

    ## ArrayList线程安全问题 众所周知,`ArrayList`不是线程安全的,在并发场景使用`ArrayList`可能会导致add内容为null,迭代时并发修改list内容抛`Concurre ...

  3. UML--->活动图梳理

    活动图梳理 活动图 概述 活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流,常常用于描述业务过程和并行处理过程,活动图在本质上是一种流程图. ...

  4. vue-cli3中引入图片的几种方式和注意事项

    如果你是在数据中引入图片,他是从项目中引入的应该按第一种方式引入 如果不是在数据中引入图片,按第二种方式引入

  5. layui+springmvc实现文件异步上传

    一.单文件上传 前端代码 <div class="layui-upload"> <div class="layui-upload-list"& ...

  6. Shiro身份验证及授权(二)

    一.Shiro 身份验证 身份验证的步骤: 收集用户身份 / 凭证,即如用户名 / 密码: 调用 Subject.login 进行登录,如果失败将得到相应的 AuthenticationExcepti ...

  7. string method 字符串常用方法讲解

    st = 'hello ketty ##$ \*'print(st.count('t'))# 输出‘t’的个数print(st.capitalize()) #Hello ketty 将首字母大写pri ...

  8. OpenCV3入门(五)图像的阈值

    1.图像阈值与二值化 阈值是一种简单的图像分割方法,一幅图像包括目标物体(前景).背景还有噪声,要想从数字图像中直接提取出目标物体,可以设定一个像素值即阈值,然后用图像的每一个像素点和阈值做比较,给出 ...

  9. tmobst5an

    1.(单选题)SQL语言又称为() A)结构化定义语言 B)结构化控制语言 C)结构化查询语言 D)结构化操纵语言 解析:SQL语言又称为结构化查询语言 2.(单选题)只有满足联接条件的记录才包含在查 ...

  10. python文件内容处理(一)

    综述:一定要理解光标移动的规则 ---------------------------------------------------------------------------第一部分基本操作- ...