f#字典,不变性和性能

问题描述 投票:1回答:1

我正在将C#代码移植到F#,并且我遇到了一些很大但很简单的字典;它们的值是单个浮点数,键是字符串。

该代码处理需要插入,删除但还更新某些键的命令,并且有许多操作不断发生(它正在跟踪交易订单簿。)>

我在F#领域还很陌生,我想了解一些东西。根据我的阅读,F#字典是不可变的,因此任何更改都会重建字典。

如果我有一个包含1000个条目的字典,并且在其中进行了200次更改,是否意味着该字典的数据将被重建200次?

如果这不是正确的集合,在F#中,对于每秒变化多次的很大列表,我还应该使用什么? (数据为[string] = float)

我正在将C#代码移植到F#,并且我遇到了一些很大但很简单的字典;它们的值是单个浮点数,键是字符串。该代码处理需要...

dictionary f#
1个回答
0
投票

System.Collections.Generic.Dictionary类在F#和C#之间是相同的(完全相同)。如果在C#中对您有效,则使用完全相同的方法调用在F#中应对您完全合适。与其他.NET语言的互操作性是F#的一个好方面。用于娱乐和获利的F#具有some info on porting from C# to F#

© www.soinside.com 2019 - 2024. All rights reserved.