我的程序从交换中获取大量数据。数据被解析为刻度对象。典型的滴答声
struct Tick
{
string ID;
int bidprice[5];
int askprice[5];
int totalTradedQuantity;
int totalTradedVolume;
.....
.....
}
此刻度对象发布到网络并记录在文件中。目前我正在锁定更新刻度和发布。
Parser Part:
lock();
tick update
unlock();
Publisher Part:
lock();
tick publish;
unlock();
由于数据的频率很高(每秒 5000 个),我必须为收到的每个数据锁定。会不会导致性能问题?如何避免占用这么多锁。任何人都可以建议具有最少锁定的设计实现。请帮忙。