Exemplo n.º 1
0
        public static Serializer CreatePooled(System.Type type)
        {
            lookupPooledTypeData.SetToType(type);

            Serializer serializer;

            if (!typeSerializerDictionary.TryGetValue(lookupPooledTypeData, out serializer))
            {
                TypeSerializationMetadata typeMetadata = new TypeSerializationMetadata(type);
                serializer = Create(typeMetadata);
                typeSerializerDictionary.Add(typeMetadata, serializer);
            }

            return(serializer);
        }
Exemplo n.º 2
0
        public static Serializer CreatePooled(System.Type type)
        {
            Serializer serializer;

            lock (_pooledSerializerLock)
            {
                _lookupPooledTypeData.SetToType(type);
                if (!_typeSerializerDictionary.TryGetValue(_lookupPooledTypeData, out serializer))
                {
                    TypeSerializationMetadata typeMetadata = new TypeSerializationMetadata(type);
                    serializer = Create(typeMetadata);
                    _typeSerializerDictionary.Add(typeMetadata, serializer);
                }
            }

            return(serializer);
        }