Board logo

Subject: HashMap 建议 [Print This Page]

Author: wuyou    Time: 2018-11-6 11:03     Subject: HashMap 建议

建议将 FList: array of TCnHashMapRec;
移到 protected
使得继承的类可以输出 FList 列表,不需要每次都跑 GetNext,这不是线程安全的

TWgs = array of TWg;

function TWgMap.GetList: TWgs;
var
  i,j: Integer;
begin
  SetLength(Result, Size);
  j := 0;

  for I := Low(FList) to High(FList) do begin
    if FList.HashCode < 0 then Continue;

    Result[j] := PWg(Pointer(Integer(FList.Value)))^;
    inc(j);
  end;
end;

[ 本帖最后由 wuyou 于 2018-11-6 11:20 编辑 ]
Author: Passion    Time: 2018-11-6 22:45

您的建议有道理,我们已将FList移动至protected节,git上的cnvcl代码已更新。




Welcome to CnPack Forum (http://bbs.cnpack.org/) Powered by Discuz! 5.0.0