2012-07-31 17 views
0

我有一個很愚蠢的基本問題。但我認爲它對於許多其他初級程序員可能非常有用。我想通過串口(接收)進行非常快速的通信(12Mb/s),我想爲字符串^ s創建一個FIFO緩衝區,我將從傳入的消息中提取(起始字節 - 帶詳細信息的消息 - 停止字節) 。你會推薦我什麼?C++/CLI FIFO - 用於串口讀取的列表與陣列

A)我應該使用基於Array類的固體緩衝區嗎?

B)我應該使用基於List類的動態緩衝區嗎?

非常感謝。

PS:我也不得不提到,數據收集到這個數組運行在一個線程中。來自該緩衝區的第二個線程解碼字符串和第三個線程管理兩個線程

+0

好的。到目前爲止,我正在瀏覽List類,看起來List更好,但我不確定這個Class的速度。 – Scientist42 2012-07-31 12:22:37

+0

A'隊列 ^'在這裏是適當的。不要忘記鎖定,以確保線程安全。 ConcurrentQueue,如果你的目標是.NET 4. – 2012-07-31 13:33:21

+0

這似乎是答案。所以如果你想回答它,把它作爲答案或明天我自己回答。謝謝。 – Scientist42 2012-07-31 14:30:54

回答

2

正如漢斯寫的,我的問題的最佳解決方案是班隊列,與所有的硬度連接在一起。