public Object Clone()
        {
            TaskInventoryDictionary clone = new TaskInventoryDictionary();

            foreach (KeyValuePair <UUID, TaskInventoryItem> kvp in this)
            {
                clone.Add(kvp.Key, (TaskInventoryItem)kvp.Value.Clone());
            }

            return(clone);
        }
        public Object Clone()
        {
            TaskInventoryDictionary clone = new TaskInventoryDictionary();

            m_itemLock.EnterReadLock();
            foreach (UUID uuid in Keys)
            {
                clone.Add(uuid, (TaskInventoryItem)this[uuid].Clone());
            }
            m_itemLock.ExitReadLock();

            return(clone);
        }
        public Object Clone()
        {
            TaskInventoryDictionary clone = new TaskInventoryDictionary();

            lock (this)
            {
                foreach (UUID uuid in Keys)
                {
                    clone.Add(uuid, (TaskInventoryItem)this[uuid].Clone());
                }
            }

            return(clone);
        }