コード例 #1
0
    public void Remove(uint key)
    {
        DLinkNode <T> node = null;

        if (findDic.TryGetValue(key, out node) && node != null)
        {
            dLinkList.RemoveNode(node);
            findDic.Remove(key);
            node.Reset();
            nodePool.Recycle(node);
        }
    }
コード例 #2
0
    public T Get(uint key)
    {
        DLinkNode <T> node = null;

        if (!findDic.TryGetValue(key, out node) || node == null)
        {
            return(null);
        }
        T value = node.Value;

        dLinkList.RemoveNode(node);
        findDic.Remove(key);
        node.Reset();
        nodePool.Recycle(node);
        return(value);
    }