Пример #1
0
        private unsafe void InitialiseMap()
        {
            if (_children != null)
            {
                return;
            }

            long end = _nodeData->ChildCount + _nodeData->FirstChildID;

            Dictionary <string, NXNode> children = new Dictionary <string, NXNode>(_nodeData->ChildCount);

            for (uint i = _nodeData->FirstChildID; i < end; ++i)
            {
                AddChild(children, _file.GetNode(i));
            }
            Interlocked.CompareExchange(ref _children, children, null);
        }