【发布时间】:2017-11-16 06:31:39
【问题描述】:
我将每 0.01 秒甚至更快地获取一个 JSON 字符串,我必须将它插入到某个集合中,以便我以后可以遍历每一行并进行一些处理并在此之后删除该行。插入过程继续进行。我有点困惑是使用ArrayList还是Queue。
所以基本上我会插入第一条消息,然后是第二条,然后......同时另一个进程将读取第一个插入的值以进行处理并删除该记录,然后是第二个插入的值。请告知哪一个最快并且占用更少的存储空间?或者任何其他系列最适合我的要求?
编辑: 我有两种方法 -
GetMessages() - 不断在队列中获取/添加消息(这里的消息仅从一个源接收,该源不断发送消息并且在我们手动停止进程之前不会停止)
ProcessMessages() - 它将读取队列记录并在处理后从队列中删除它们
【问题讨论】:
-
ArrayList?至少 10 年以上没有被推荐过。你应该只使用来自System.Collections.Generic的任何东西。 -
字符串的长度完全不相关,因为集合只存储引用。字符串引用的数量是唯一相关的事情,“每 0.01 秒”并不是快得令人难以置信……
标签: .net collections