Type Clase

Definición

Representa declaraciones de tipos: tipos de clase, tipos de interfaz, tipos de matriz, tipos de valor, tipos de enumeración, parámetros de tipo, definiciones de tipo genérico y tipos genéricos construidos abiertos o cerrados.

public ref class Type abstract
public ref class Type abstract : System::Reflection::MemberInfo, System::Reflection::IReflect
public ref class Type abstract : System::Reflection::MemberInfo, System::Reflection::IReflect, System::Runtime::InteropServices::_Type
public abstract class Type
public abstract class Type : System.Reflection.MemberInfo, System.Reflection.IReflect
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class Type : System.Reflection.MemberInfo, System.Reflection.IReflect, System.Runtime.InteropServices._Type
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Type : System.Reflection.MemberInfo, System.Reflection.IReflect, System.Runtime.InteropServices._Type
type Type = class
type Type = class
    inherit MemberInfo
    interface IReflect
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type Type = class
    inherit MemberInfo
    interface _Type
    interface IReflect
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Type = class
    inherit MemberInfo
    interface _Type
    interface IReflect
Public MustInherit Class Type
Public MustInherit Class Type
Inherits MemberInfo
Implements IReflect
Public MustInherit Class Type
Inherits MemberInfo
Implements _Type, IReflect
Herencia
Type
Herencia
Derivado
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se muestran algunas características representativas de Type. El operador de C# typeof (GetType operador en Visual Basic) se usa para obtener un Type objeto que representa String. Desde este Type objeto, el GetMethod método se usa para obtener un MethodInfo objeto que representa la String.Substring sobrecarga que toma una ubicación inicial y una longitud.

Para identificar la firma de sobrecarga, el ejemplo de código crea una matriz temporal que contiene dos Type objetos que representan int (Integer en Visual Basic).

Nota

Para ser precisos, la matriz contiene dos referencias a la instancia de Type que representa int en el dominio de aplicación actual. Para cualquier tipo, solo hay una instancia de por dominio de Type aplicación.

En el ejemplo de código se usa para MethodInfo invocar el Substring método en la cadena "Hello, World!", y se muestra el resultado.

#using <System.dll>

using namespace System;
using namespace System::Reflection;

void main()
{
    // Get a Type object representing the System.String type.
    Type^ t = String::typeid;

    MethodInfo^ substr = t->GetMethod("Substring", 
        gcnew array<Type^> { int::typeid, int::typeid });

    Object^ result = 
        substr->Invoke("Hello, World!", gcnew array<Object^> { 7, 5 });
    Console::WriteLine("{0} returned \"{1}\".", substr, result);
}

/* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 */
using System;
using System.Reflection;

class Example
{
    static void Main()
    {
        Type t = typeof(String);

        MethodInfo substr = t.GetMethod("Substring", 
            new Type[] { typeof(int), typeof(int) });

        Object result = 
            substr.Invoke("Hello, World!", new Object[] { 7, 5 });
        Console.WriteLine("{0} returned \"{1}\".", substr, result);
    }
}

/* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 */
open System

let t = typeof<String>

let substr = t.GetMethod("Substring", [| typeof<int>; typeof<int> |])

let result = substr.Invoke("Hello, World!", [| 7; 5 |])
printfn $"{substr} returned \"{result}\"."

(* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 *)
Imports System.Reflection

Module Example
    
    Sub Main() 

        Dim t As Type = GetType(String)
        
        Dim substr As MethodInfo = t.GetMethod("Substring", _
            New Type() { GetType(Integer), GetType(Integer) })
        
        Dim result As Object = _ 
            substr.Invoke("Hello, World!", New Object() { 7, 5 })
        Console.WriteLine("{0} returned ""{1}"".", substr, result)
    
    End Sub 
End Module

' This code example produces the following output:
'
'System.String Substring(Int32, Int32) returned "World".

Comentarios

Type es la raíz de la System.Reflection funcionalidad y es la forma principal de acceder a los metadatos. Use los miembros de Type para obtener información sobre una declaración de tipo, sobre los miembros de un tipo (como los constructores, métodos, campos, propiedades y eventos de una clase), así como el módulo y el ensamblado en el que se implementa la clase.

No se requieren permisos para que el código use la reflexión para obtener información sobre los tipos y sus miembros, independientemente de sus niveles de acceso. No se requieren permisos para que el código use la reflexión para acceder a miembros públicos u otros miembros cuyos niveles de acceso los harían visibles durante la compilación normal. Sin embargo, para que el código use la reflexión para acceder a los miembros que normalmente serían inaccesibles, como métodos privados o internos, o campos protegidos de un tipo que la clase no hereda, el código debe tener ReflectionPermission. Consulte Consideraciones de seguridad para la reflexión.

Type es una clase base abstracta que permite varias implementaciones. El sistema siempre proporcionará la clase RuntimeTypederivada . En reflexión, todas las clases que comienzan con la palabra Runtime se crean una sola vez por objeto en el sistema y admiten operaciones de comparación.

Nota

En escenarios de multithreading, no bloquee Type objetos para sincronizar el acceso a los static datos. Otro código, sobre el que no tiene ningún control, también puede bloquear el tipo de clase. Esto podría dar lugar a un interbloqueo. En su lugar, sincronice el acceso a datos estáticos bloqueando un objeto privado static .

Nota

Una clase derivada puede acceder a los miembros protegidos de las clases base del código de llamada. Además, se permite el acceso a los miembros del ensamblado del código de llamada. Como regla, si se permite el acceso en el código enlazado inicialmente, también se le permite el acceso en el código enlazado en tiempo de ejecución.

Nota

Las interfaces que extienden otras interfaces no heredan los métodos definidos en las interfaces extendidas.

En esta sección:

¿Qué tipos representa un objeto Type?
Recuperar un objeto Type
Comparación de objetos de tipo para la igualdad

¿Qué tipos representa un objeto Type?

Esta clase es segura para subprocesos; varios subprocesos pueden leer simultáneamente desde una instancia de este tipo. Una instancia de la Type clase puede representar cualquiera de los siguientes tipos:

  • Clases

  • Tipos de valor

  • Matrices

  • Interfaces

  • Enumeraciones

  • Delegados

  • Tipos genéricos construidos y definiciones de tipos genéricos

  • Argumentos de tipo y parámetros de tipo de tipos genéricos construidos, definiciones de tipos genéricos y definiciones de método genérico

Recuperar un objeto Type

El Type objeto asociado a un tipo determinado se puede obtener de las siguientes maneras:

  • El método de instancia Object.GetType devuelve un Type objeto que representa el tipo de una instancia. Dado que todos los tipos administrados derivan de Object, se puede llamar al GetType método en una instancia de cualquier tipo.

    En el ejemplo siguiente se llama al Object.GetType método para determinar el tipo en tiempo de ejecución de cada objeto de una matriz de objetos.

    using namespace System;
    
    void main()
    {
       array<Object^>^ values = { "word", true, 120, 136.34 };
       for each (Object^ value in values)
          Console::WriteLine("{0} - type {1}", value, 
                            value->GetType()->Name);
    }
    // The example displays the following output:
    //       word - type String
    //       True - type Boolean
    //       120 - type Int32
    //       136.34 - type Double
    
    object[] values = { "word", true, 120, 136.34, 'a' };
    foreach (var value in values)
       Console.WriteLine("{0} - type {1}", value, 
                         value.GetType().Name);
    
    // The example displays the following output:
    //       word - type String
    //       True - type Boolean
    //       120 - type Int32
    //       136.34 - type Double
    //       a - type Char
    
    let values: obj[] = [| "word"; true; 120; 136.34; 'a' |]
    for value in values do
       printfn $"{value} - type {value.GetType().Name}"
    
    // The example displays the following output:
    //       word - type String
    //       True - type Boolean
    //       120 - type Int32
    //       136.34 - type Double
    //       a - type Char
    
    Module Example
       Public Sub Main()
          Dim values() As Object = { "word", True, 120, 136.34, "a"c }
          For Each value In values
             Console.WriteLine("{0} - type {1}", value, 
                               value.GetType().Name)
          Next
       End Sub
    End Module
    ' The example displays the following output:
    '       word - type String
    '       True - type Boolean
    '       120 - type Int32
    '       136.34 - type Double
    '       a - type Char
    
  • Los métodos estáticos Type.GetType devuelven un Type objeto que representa un tipo especificado por su nombre completo.

  • Los Module.GetTypesmétodos , Module.GetTypey Module.FindTypes devuelven Type objetos que representan los tipos definidos en un módulo. El primer método se puede usar para obtener una matriz de Type objetos para todos los tipos públicos y privados definidos en un módulo. (Puede obtener una instancia de a través del Module Assembly.GetModule método o Assembly.GetModules , o a través de la Type.Module propiedad ).

  • El System.Reflection.Assembly objeto contiene una serie de métodos para recuperar las clases definidas en un ensamblado, incluidos Assembly.GetType, Assembly.GetTypesy Assembly.GetExportedTypes.

  • El FindInterfaces método devuelve una lista filtrada de tipos de interfaz admitidos por un tipo.

  • El GetElementType método devuelve un Type objeto que representa el elemento .

  • Los GetInterfaces métodos y GetInterface devuelven Type objetos que representan los tipos de interfaz admitidos por un tipo.

  • El GetTypeArray método devuelve una matriz de Type objetos que representa los tipos especificados por un conjunto arbitrario de objetos. Los objetos se especifican con una matriz de tipo Object.

  • Los GetTypeFromProgID métodos y GetTypeFromCLSID se proporcionan para la interoperabilidad COM. Devuelven un Type objeto que representa el tipo especificado por o ProgID CLSID.

  • El GetTypeFromHandle método se proporciona para la interoperabilidad. Devuelve un Type objeto que representa el tipo especificado por un identificador de clase.

  • El operador de C#typeof, el operador de C++ typeid y el operador Visual Basic GetType obtienen el Type objeto de un tipo.

  • El MakeGenericType método devuelve un Type objeto que representa un tipo genérico construido, que es un tipo construido abierto si su ContainsGenericParameters propiedad devuelve truey un tipo construido cerrado de lo contrario. Solo se puede crear una instancia de un tipo genérico si está cerrado.

  • Los MakeArrayTypemétodos , MakePointerTypey MakeByRefType devuelven Type objetos que representan, respectivamente, una matriz de un tipo especificado, un puntero a un tipo especificado y el tipo de un parámetro de referencia (ref en C#, "byref" en F#, ByRef en Visual Basic).

Comparación de objetos de tipo para la igualdad

Un Type objeto que representa un tipo es único; es decir, dos Type referencias de objeto hacen referencia al mismo objeto si y solo si representan el mismo tipo. Esto permite la comparación de objetos mediante la igualdad de Type referencia. En el ejemplo siguiente se comparan los Type objetos que representan un número de valores enteros para determinar si son del mismo tipo.

using namespace System;

void main()
{
   Int64 number1 = 1635429;
   Int32 number2 = 16203;
   double number3 = 1639.41;
   Int64 number4 = 193685412;
   
   // Get the type of number1.
   Type^ t = number1.GetType();
   
   // Compare types of all objects with number1.
   Console::WriteLine("Type of number1 and number2 are equal: {0}",
                      Object::ReferenceEquals(t, number2.GetType()));
   Console::WriteLine("Type of number1 and number3 are equal: {0}",
                      Object::ReferenceEquals(t, number3.GetType()));
   Console::WriteLine("Type of number1 and number4 are equal: {0}",
                      Object::ReferenceEquals(t, number4.GetType()));
}
// The example displays the following output:
//       Type of number1 and number2 are equal: False
//       Type of number1 and number3 are equal: False
//       Type of number1 and number4 are equal: True
long number1 = 1635429;
int number2 = 16203;
double number3 = 1639.41;
long number4 = 193685412;

// Get the type of number1.
Type t = number1.GetType();

// Compare types of all objects with number1.
Console.WriteLine("Type of number1 and number2 are equal: {0}",
                  Object.ReferenceEquals(t, number2.GetType()));
Console.WriteLine("Type of number1 and number3 are equal: {0}",
                  Object.ReferenceEquals(t, number3.GetType()));
Console.WriteLine("Type of number1 and number4 are equal: {0}",
                  Object.ReferenceEquals(t, number4.GetType()));

// The example displays the following output:
//       Type of number1 and number2 are equal: False
//       Type of number1 and number3 are equal: False
//       Type of number1 and number4 are equal: True
let number1 = 1635429L
let number2 = 16203
let number3 = 1639.41
let number4 = 193685412L

// Get the type of number1.
let t = number1.GetType()

// Compare types of all objects with number1.
printfn $"Type of number1 and number2 are equal: {Object.ReferenceEquals(t, number2.GetType())}"
printfn $"Type of number1 and number3 are equal: {Object.ReferenceEquals(t, number3.GetType())}"
printfn $"Type of number1 and number4 are equal: {Object.ReferenceEquals(t, number4.GetType())}"

// The example displays the following output:
//       Type of number1 and number2 are equal: False
//       Type of number1 and number3 are equal: False
//       Type of number1 and number4 are equal: True
Module Example
   Public Sub Main()
      Dim number1 As Long = 1635429
      Dim number2 As Integer = 16203
      Dim number3 As Double = 1639.41
      Dim number4 As Long = 193685412
      
      ' Get the type of number1.
      Dim t As Type = number1.GetType()
      
      ' Compare types of all objects with number1.
      Console.WriteLine("Type of number1 and number2 are equal: {0}",
                        Object.ReferenceEquals(t, number2.GetType()))
      Console.WriteLine("Type of number1 and number3 are equal: {0}",
                        Object.ReferenceEquals(t, number3.GetType()))
      Console.WriteLine("Type of number1 and number4 are equal: {0}",
                        Object.ReferenceEquals(t, number4.GetType()))
   End Sub
End Module
' The example displays the following output:
'       Type of number1 and number2 are equal: False
'       Type of number1 and number3 are equal: False
'       Type of number1 and number4 are equal: True

Notas a los implementadores

Al heredar de Type, es necesario invalidar los miembros siguientes:.

Constructores

Type()

Inicializa una nueva instancia de la clase Type.

Campos

Delimiter

Separa los nombres en el espacio de nombres de Type. Este campo es de solo lectura.

EmptyTypes

Representa una matriz vacía de tipo Type. Este campo es de solo lectura.

FilterAttribute

Representa el filtro de miembros que se usa para los atributos. Este campo es de solo lectura.

FilterName

Representa el filtro de miembros que distingue mayúsculas de minúsculas y que se aplica a los nombres. Este campo es de solo lectura.

FilterNameIgnoreCase

Representa el filtro de miembros que no distingue mayúsculas de minúsculas y que se aplica a los nombres. Este campo es de solo lectura.

Missing

Representa un valor que falta en la información de Type. Este campo es de solo lectura.

Propiedades

Assembly

Obtiene la propiedad Assembly en la que está declarado el tipo. Para los tipos genéricos, obtiene la propiedad Assembly en la que está definido el tipo genérico.

AssemblyQualifiedName

Obtiene el nombre calificado con el ensamblado del tipo, que incluye el nombre del ensamblado a partir del cual se ha cargado el objeto Type.

Attributes

Obtiene los atributos asociados al objeto Type.

BaseType

Obtiene el tipo del que hereda directamente el objeto Type actual.

ContainsGenericParameters

Obtiene un valor que indica si el objeto Type actual tiene parámetros de tipo que no han sido reemplazados por tipos específicos.

CustomAttributes

Obtiene una colección que contiene los atributos personalizados de este miembro.

(Heredado de MemberInfo)
DeclaringMethod

Obtiene un objeto MethodBase que representa el método declarativo si el objeto Type actual representa un parámetro de tipo de un método genérico.

DeclaringType

Obtiene el tipo que declara el tipo anidado actual o el parámetro de tipo genérico.

DefaultBinder

Obtiene una referencia al enlazador predeterminado, que implementa varias reglas internas para seleccionar los miembros adecuados a los que llamará el método InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).

FullName

Obtiene el nombre completo del tipo, incluido su espacio de nombres, pero no su ensamblado.

GenericParameterAttributes

Obtiene una combinación de marcas GenericParameterAttributes que describen la covarianza y las restricciones especiales del parámetro de tipo genérico actual.

GenericParameterPosition

Obtiene la posición del parámetro de tipo en la lista de parámetros de tipo del tipo o método genérico que declaró el parámetro, siempre que el objeto Type represente un parámetro de tipo de un tipo genérico o de un método genérico.

GenericTypeArguments

Obtiene una matriz de los argumentos de tipo genérico para este tipo.

GUID

Obtiene el GUID asociado al objeto Type.

HasElementType

Obtiene un valor que indica si el objeto Type actual engloba o hace referencia a otro tipo; es decir, si el objeto Type actual es una matriz o un puntero, o si se pasa por referencia.

IsAbstract

Obtiene un valor que indica si Type es abstracto y se debe invalidar.

IsAnsiClass

Obtiene un valor que indica si se selecciona el atributo de formato de cadena AnsiClass para el objeto Type.

IsArray

Obtiene un valor que indica si el tipo es una matriz.

IsAutoClass

Obtiene un valor que indica si se selecciona el atributo de formato de cadena AutoClass para el objeto Type.

IsAutoLayout

Obtiene un valor que indica si los campos de tipo de la actual se disponen automáticamente mediante Common Language Runtime.

IsByRef

Obtiene un valor que indica si Type se pasa por referencia.

IsByRefLike

Obtiene un valor que indica si el tipo es una estructura de tipo ByRef.

IsClass

Obtiene un valor que indica si Type es una clase o un delegado, es decir, no es un tipo de valor ni una interfaz.

IsCollectible

Obtiene un valor que indica si este objeto MemberInfo forma parte de un ensamblado contenido en un AssemblyLoadContext recopilable.

(Heredado de MemberInfo)
IsCOMObject

Obtiene un valor que indica si Type es un objeto COM.

IsConstructedGenericType

Obtiene un valor que indica si este objeto representa un tipo genérico construido. Puede crear instancias de un tipo genérico construido.

IsContextful

Obtiene un valor que indica si Type puede estar hospedado en un contexto.

IsEnum

Obtiene un valor que indica si el objeto Type actual representa una enumeración.

IsExplicitLayout

Obtiene un valor que indica si los campos del tipo actual se disponen en los desplazamientos especificados explícitamente.

IsGenericMethodParameter

Obtiene un valor que indica si el objeto Type actual representa un parámetro de tipo en la definición de un método genérico.

IsGenericParameter

Obtiene un valor que indica si el objeto Type actual representa un parámetro de tipo en la definición de un método o tipo genérico.

IsGenericType

Obtiene un valor que indica si el tipo actual es genérico.

IsGenericTypeDefinition

Obtiene un valor que indica si el objeto Type actual representa una definición de tipo genérico, a partir de la cual se pueden construir otros tipos genéricos.

IsGenericTypeParameter

Obtiene un valor que indica si el objeto Type actual representa un parámetro de tipo en la definición de un tipo genérico.

IsImport

Obtiene un valor que indica si el objeto Type tiene aplicado un atributo ComImportAttribute, lo que indica que se ha importado de una biblioteca de tipos COM.

IsInterface

Obtiene un valor que indica si Type es una interfaz, es decir, no es una clase ni un tipo de valor.

IsLayoutSequential

Obtiene un valor que indica si los campos del tipo actual se disponen secuencialmente, en el orden que se definieron o emitieron en los metadatos.

IsMarshalByRef

Obtiene un valor que indica si Type se calcula por referencia.

IsNested

Obtiene un valor que indica si el objeto Type actual representa un tipo cuya definición está anidada dentro de la definición de otro tipo.

IsNestedAssembly

Obtiene un valor que indica si Type está anidado y solo se ve dentro de su propio ensamblado.

IsNestedFamANDAssem

Obtiene un valor que indica si Type está anidado y solo está visible para las clases que pertenezcan tanto a su propia familia como a su propio ensamblado.

IsNestedFamily

Obtiene un valor que indica si Type está anidado y solo se ve dentro de su propia familia.

IsNestedFamORAssem

Obtiene un valor que indica si Type está anidado y solo está visible para las clases que pertenezcan a su propia familia o a su propio ensamblado.

IsNestedPrivate

Obtiene un valor que indica si Type está anidado y se ha declarado privado.

IsNestedPublic

Obtiene un valor que indica si hay una clase anidada que se ha declarado pública.

IsNotPublic

Obtiene un valor que indica si el objeto Type no se ha declarado público.

IsPointer

Obtiene un valor que indica si el objeto Type es un puntero.

IsPrimitive

Obtiene un valor que indica si el objeto Type es uno de los tipos primitivos.

IsPublic

Obtiene un valor que indica si el objeto Type se ha declarado público.

IsSealed

Obtiene un valor que indica si el objeto Type se declaró "sealed".

IsSecurityCritical

Obtiene un valor que indica si el tipo actual es crítico para la seguridad o crítico para la seguridad y disponible desde código transparente en el nivel de confianza actual y, por tanto, puede realizar operaciones críticas.

IsSecuritySafeCritical

Obtiene un valor que indica si el tipo actual es crítico para la seguridad y disponible desde código transparente en el nivel de confianza actual; es decir, si puede realizar operaciones críticas y está disponible desde código transparente.

IsSecurityTransparent

Obtiene un valor que indica si el tipo actual es transparente en el nivel de confianza actual y, por tanto, no puede realizar operaciones críticas.

IsSerializable

Obtiene un valor que indica si el objeto Type es serializable.

IsSignatureType

Obtiene un valor que indica si el tipo es una tipo de firma.

IsSpecialName

Obtiene un valor que indica si el tipo tiene un nombre que requiere un tratamiento especial.

IsSZArray

Obtiene un valor que indica si el tipo es un tipo de matriz que puede representar solo una matriz unidimensional con un límite inferior de cero.

IsTypeDefinition

Obtiene un valor que indica si el tipo es una definición de tipo.

IsUnicodeClass

Obtiene un valor que indica si se selecciona el atributo de formato de cadena UnicodeClass para el objeto Type.

IsValueType

Obtiene un valor que indica si el objeto Type es un tipo de valor.

IsVariableBoundArray

Obtiene un valor que indica si el tipo es un tipo de matriz que puede representar una matriz multidimensional o una matriz con un límite inferior arbitrario.

IsVisible

Obtiene un valor que indica si se puede obtener acceso al objeto Type mediante el código fuera del ensamblado.

MemberType

Obtiene un valor de MemberTypes que indica que este miembro es un tipo o un tipo anidado.

MetadataToken

Obtiene un valor que identifica un elemento de metadatos.

(Heredado de MemberInfo)
Module

Obtiene el módulo (la DLL) en que se define el objeto Type actual.

Name

Cuando se invalida en una clase derivada, obtiene el nombre del tipo actual.

Name

Obtiene el nombre del miembro actual.

(Heredado de MemberInfo)
Namespace

Obtiene el espacio de nombres de Type.

ReflectedType

Obtiene el objeto de clase usado para obtener este miembro.

StructLayoutAttribute

Obtiene una clase StructLayoutAttribute que describe el diseño del tipo actual.

TypeHandle

Obtiene el identificador del objeto Type actual.

TypeInitializer

Obtiene el inicializador para el tipo.

UnderlyingSystemType

Indica el tipo proporcionado por Common Language Runtime para representar este tipo.

Métodos

Equals(Object)

Determina si el tipo del sistema subyacente del objeto Type actual es el mismo que el tipo del sistema subyacente del objeto Object especificado.

Equals(Type)

Determina si el tipo de sistema subyacente del objeto Type actual es igual que el tipo de sistema subyacente del objeto Type especificado.

FindInterfaces(TypeFilter, Object)

Devuelve una matriz de objetos Type que representa una lista filtrada de interfaces implementadas o heredadas por el objeto Type actual.

FindMembers(MemberTypes, BindingFlags, MemberFilter, Object)

Devuelve una matriz filtrada de objetos MemberInfo del tipo del miembro especificado.

GetArrayRank()

Obtiene el número de dimensiones de una matriz.

GetAttributeFlagsImpl()

Cuando se invalida en una clase derivada, implementa la propiedad Attributes y obtiene una combinación bit a bit de valores de enumeración que indican los atributos asociados a Type.

GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Busca un constructor cuyos parámetros coincidan con los modificadores y tipos de argumento especificados, mediante las restricciones de enlace indicadas y la convención de llamadas también especificada.

GetConstructor(BindingFlags, Binder, Type[], ParameterModifier[])

Busca un constructor cuyos parámetros coincidan con los tipos y modificadores de argumento especificados, mediante las restricciones de enlace también especificadas.

GetConstructor(BindingFlags, Type[])

Busca un constructor cuyos parámetros coincidan con los tipos de argumento especificados, utilizando las restricciones de enlace especificadas.

GetConstructor(Type[])

Busca un constructor de instancia público cuyos parámetros coincidan con los tipos de la matriz especificada.

GetConstructorImpl(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Cuando se invalida en una clase derivada, busca un constructor cuyos parámetros coincidan con los tipos y modificadores de argumento especificados, y aplica las restricciones de enlace especificadas y la convención de llamadas especificada.

GetConstructors()

Devuelve todos los constructores públicos definidos para el objeto Type actual.

GetConstructors(BindingFlags)

Cuando se invalida en una clase derivada, busca los constructores definidos para el objeto Type actual, con las enumeraciones BindingFlags especificadas.

GetCustomAttributes(Boolean)

Cuando se reemplaza en una clase derivada, devuelve una matriz de todos los atributos personalizados aplicados a este miembro.

(Heredado de MemberInfo)
GetCustomAttributes(Type, Boolean)

Cuando se invalida en una clase derivada, devuelve una matriz de atributos personalizados aplicados a este miembro e identificado por Type.

(Heredado de MemberInfo)
GetCustomAttributesData()

Devuelve una lista de objetos CustomAttributeData que representan datos sobre los atributos que se aplicaron al miembro de destino.

(Heredado de MemberInfo)
GetDefaultMembers()

Busca los miembros definidos para el objeto Type actual cuya clase DefaultMemberAttribute esté establecida.

GetElementType()

Cuando se invalida en una clase derivada, devuelve la clase Type del objeto englobado o al que hace referencia la matriz, el puntero o el tipo de referencia actual.

GetEnumName(Object)

Devuelve el nombre de la constante que tiene el valor especificado para el tipo de enumeración actual.

GetEnumNames()

Devuelve los nombres de los miembros del tipo de enumeración actual.

GetEnumUnderlyingType()

Devuelve el tipo subyacente del tipo de enumeración actual.

GetEnumValues()

Devuelve una matriz con los valores de las constantes en el tipo de enumeración actual.

GetEvent(String)

Devuelve el objeto EventInfo que representa el evento público especificado.

GetEvent(String, BindingFlags)

Cuando se invalida en una clase derivada, devuelve el objeto EventInfo que representa el evento especificado y aplica las restricciones de enlace especificadas.

GetEvents()

Devuelve todos los eventos públicos declarados o heredados por el objeto Type actual.

GetEvents(BindingFlags)

Cuando se invalida en una clase derivada, busca los eventos declarados o heredados por el objeto Type actual y aplica las restricciones de enlace especificadas.

GetField(String)

Busca el campo público con el nombre especificado.

GetField(String, BindingFlags)

Busca el campo especificado mediante las restricciones de enlace especificadas.

GetFields()

Devuelve todos los campos públicos del objeto Type actual.

GetFields(BindingFlags)

Cuando se invalida en una clase derivada, busca los campos definidos para el objeto Type actual y aplica las restricciones de enlace especificadas.

GetGenericArguments()

Devuelve una matriz de objetos Type que representan los argumentos de tipo de un tipo genérico o los parámetros de tipo de una definición de tipo genérico.

GetGenericParameterConstraints()

Devuelve una matriz de objetos Type que representan las restricciones en el parámetro de tipo genérico actual.

GetGenericTypeDefinition()

Devuelve un objeto Type que representa una definición de tipo genérico a partir de la cual se puede construir el tipo genérico actual.

GetHashCode()

Devuelve el código hash de esta instancia.

GetInterface(String)

Busca la interfaz con el nombre especificado.

GetInterface(String, Boolean)

Cuando se invalida en una clase derivada, busca la interfaz especificada e indica si la búsqueda no debe distinguir entre mayúsculas y minúsculas para el nombre de la interfaz.

GetInterfaceMap(Type)

Devuelve una asignación de interfaz para el tipo de interfaz especificado.

GetInterfaces()

Cuando se invalida en una clase derivada, obtiene todas las interfaces implementadas o heredadas por el objeto Type actual.

GetMember(String)

Busca los miembros públicos con el nombre especificado.

GetMember(String, BindingFlags)

Busca los miembros especificados mediante las restricciones de enlace especificadas.

GetMember(String, MemberTypes, BindingFlags)

Busca los miembros especificados que sean del tipo de miembro especificado mediante las restricciones de enlace especificadas.

GetMembers()

Devuelve todos los miembros públicos del objeto Type actual.

GetMembers(BindingFlags)

Cuando se invalida en una clase derivada, busca los miembros definidos para el objeto Type actual y aplica las restricciones de enlace especificadas.

GetMemberWithSameMetadataDefinitionAs(MemberInfo)

Busca en MemberInfo el objeto actual Type que coincida con el especificado MemberInfo.

GetMethod(String)

Busca el método público con el nombre especificado.

GetMethod(String, BindingFlags)

Busca el método especificado mediante las restricciones de enlace especificadas.

GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Busca el método especificado cuyos parámetros coincidan con los tipos y modificadores de argumentos especificados, usando las restricciones de enlace indicadas y la convención de llamada especificada.

GetMethod(String, BindingFlags, Binder, Type[], ParameterModifier[])

Busca el método especificado cuyos parámetros coincidan con los tipos y modificadores de argumentos especificados, mediante las restricciones de enlace indicadas.

GetMethod(String, BindingFlags, Type[])

Busca el método especificado cuyos parámetros coinciden con los tipos de argumento especificados, utilizando las restricciones de enlace especificadas.

GetMethod(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Busca el método especificado cuyos parámetros coincidan con el número de parámetros genéricos, los tipos de argumento y los modificadores especificados, mediante las restricciones de enlace y la convención de llamada especificadas.

GetMethod(String, Int32, BindingFlags, Binder, Type[], ParameterModifier[])

Busca el método especificado cuyos parámetros coincidan con el número de parámetros genéricos, los tipos de argumento y los modificadores especificados, mediante las restricciones de enlace especificadas.

GetMethod(String, Int32, Type[])

Busca el método público especificado cuyos parámetros coincidan con el número de parámetros genéricos y los tipos de argumento especificados.

GetMethod(String, Int32, Type[], ParameterModifier[])

Busca el método público especificado cuyos parámetros coincidan con el número de parámetros genéricos, los tipos de argumento y los modificadores especificados.

GetMethod(String, Type[])

Busca el método público especificado cuyos parámetros coincidan con los tipos de argumentos especificados.

GetMethod(String, Type[], ParameterModifier[])

Busca el método público especificado cuyos parámetros coincidan con los tipos y modificadores de argumento especificados.

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Cuando se invalida en una clase derivada, busca el método especificado cuyos parámetros coincidan con los tipos y modificadores de argumentos especificados y aplica las restricciones de enlace especificadas y la convención de llamada especificada.

GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Cuando se invalida en una clase derivada, busca el método especificado cuyos parámetros coincidan con el número de parámetros genéricos, tipos de argumento y modificadores especificados, mediante las restricciones de enlace y la convención de llamada especificadas.

GetMethods()

Devuelve todos los métodos públicos del objeto Type actual.

GetMethods(BindingFlags)

Cuando se invalida en una clase derivada, busca los métodos definidos para el objeto Type actual y aplica las restricciones de enlace especificadas.

GetNestedType(String)

Busca el tipo anidado público con el nombre especificado.

GetNestedType(String, BindingFlags)

Cuando se invalida en una clase derivada, busca el tipo anidado especificado y aplica las restricciones de enlace especificadas.

GetNestedTypes()

Devuelve los tipos públicos anidados en el objeto Type actual.

GetNestedTypes(BindingFlags)

Cuando se invalida en una clase derivada, busca los tipos anidados en el objeto Type actual y aplica las restricciones de enlace especificadas.

GetProperties()

Devuelve todas las propiedades públicas del objeto Type actual.

GetProperties(BindingFlags)

Cuando se invalida en una clase derivada, busca las propiedades del objeto Type actual y aplica las restricciones de enlace especificadas.

GetProperty(String)

Busca la propiedad pública con el nombre especificado.

GetProperty(String, BindingFlags)

Busca la propiedad especificada, mediante las restricciones de enlace especificadas.

GetProperty(String, BindingFlags, Binder, Type, Type[], ParameterModifier[])

Busca la propiedad especificada cuyos parámetros coincidan con los tipos y modificadores de argumentos especificados, mediante las restricciones de enlace indicadas.

GetProperty(String, Type)

Busca la propiedad pública con el nombre especificado y el tipo de valor devuelto.

GetProperty(String, Type, Type[])

Busca la propiedad pública especificada cuyos parámetros coincidan con los tipos de argumentos especificados.

GetProperty(String, Type, Type[], ParameterModifier[])

Busca la propiedad pública especificada cuyos parámetros coincidan con los tipos y modificadores de los argumentos especificados.

GetProperty(String, Type[])

Busca la propiedad pública especificada cuyos parámetros coincidan con los tipos de argumentos especificados.

GetPropertyImpl(String, BindingFlags, Binder, Type, Type[], ParameterModifier[])

Cuando se invalida en una clase derivada, busca la propiedad especificada cuyos parámetros coincidan con los tipos y modificadores de argumentos especificados, usando las restricciones de enlace especificadas.

GetType()

Obtiene la estructura Type actual.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetType(String)

Obtiene el objeto Type con el nombre especificado, mediante una búsqueda en la que se distingue entre mayúsculas y minúsculas.

GetType(String, Boolean)

Obtiene el objeto Type con el nombre especificado, que realiza una búsqueda donde se distingue entre mayúsculas y minúsculas y especifica si se va a producir o no una excepción si no se encuentra el tipo.

GetType(String, Boolean, Boolean)

Obtiene el Type con el nombre indicado, que especifica si se genera una excepción en caso de que no se encuentre el tipo y si se va a realizar una búsqueda donde se distingue entre mayúsculas y minúsculas.

GetType(String, Func<AssemblyName,Assembly>, Func<Assembly,String,Boolean,Type>)

Obtiene el tipo con el nombre especificado, que, de manera opcional, puede proporcionar métodos personalizados para resolver el ensamblado y el tipo.

GetType(String, Func<AssemblyName,Assembly>, Func<Assembly,String,Boolean,Type>, Boolean)

Obtiene el tipo con el nombre indicado, que especifica si se va a iniciar una excepción en caso de que el tipo no se encuentre y que, de manera opcional, puede proporcionar métodos personalizados para resolver el ensamblado y el tipo.

GetType(String, Func<AssemblyName,Assembly>, Func<Assembly,String,Boolean,Type>, Boolean, Boolean)

Obtiene el tipo con el nombre indicado, que especifica si se va a realizar una búsqueda sin distinguir mayúsculas de minúsculas y si se va a iniciar una excepción en caso de que el tipo no se encuentre y que, de manera opcional, puede proporcionar métodos personalizados para resolver el ensamblado y el tipo.

GetTypeArray(Object[])

Obtiene los tipos de los objetos de la matriz especificada.

GetTypeCode(Type)

Obtiene el código de tipo subyacente del objeto Type especificado.

GetTypeCodeImpl()

Devuelve el código de tipo subyacente de esta instancia de Type.

GetTypeFromCLSID(Guid)

Obtiene el tipo asociado al identificador de clase especificado (CLSID).

GetTypeFromCLSID(Guid, Boolean)

Obtiene el tipo asociado al identificador de clase (CLSID) especificado, que debe indicar si se producirá una excepción en caso de que se produzca un error al cargar el tipo.

GetTypeFromCLSID(Guid, String)

Obtiene el tipo asociado al identificador de clase (CLSID) especificado desde el servidor especificado.

GetTypeFromCLSID(Guid, String, Boolean)

Obtiene el tipo asociado al identificador de clase (CLSID) indicado desde el servidor especificado y debe indicarse si se producirá una excepción en caso de que se produzca un error al cargar el tipo.

GetTypeFromHandle(RuntimeTypeHandle)

Obtiene el tipo al que hace referencia el identificador de tipos especificado.

GetTypeFromProgID(String)

Obtiene el tipo asociado al identificador de programa (ProgID) especificado y devuelve null si se produce un error al cargar Type.

GetTypeFromProgID(String, Boolean)

Obtiene el tipo asociado al identificador de programa (ProgID) especificado; debe indicarse si se producirá una excepción en caso de que se produzca un error al cargar el tipo.

GetTypeFromProgID(String, String)

Obtiene el tipo asociado al identificador de programa (ProgID) especificado desde el servidor especificado y devuelve null si se produce un error al cargar el tipo.

GetTypeFromProgID(String, String, Boolean)

Obtiene el tipo asociado al identificador de programa (ProgID) indicado desde el servidor especificado; debe indicarse si se producirá una excepción en caso de que se produzca un error al cargar el tipo.

GetTypeHandle(Object)

Obtiene el identificador para la clase Type de un objeto especificado.

HasElementTypeImpl()

Cuando se invalida en una clase derivada, implementa la propiedad HasElementType y determina si el objeto Type actual engloba a otro tipo o hace referencia a él; es decir, si el objeto Type actual es una matriz o un puntero, o se pasa por referencia.

HasSameMetadataDefinitionAs(MemberInfo) (Heredado de MemberInfo)
InvokeMember(String, BindingFlags, Binder, Object, Object[])

Invoca al miembro especificado, aplica las restricciones de enlace igualmente especificadas y compara la lista de argumentos indicada.

InvokeMember(String, BindingFlags, Binder, Object, Object[], CultureInfo)

Invoca al miembro especificado, aplica las restricciones de enlace especificadas y compara la lista de argumentos y la referencia cultural igualmente especificadas.

InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])

Cuando se invalida en una clase derivada, invoca al miembro especificado, aplica las restricciones de enlace igualmente especificadas y realiza una comparación con la lista de argumentos, los modificadores y la referencia cultural indicados.

IsArrayImpl()

Cuando se invalida en una clase derivada, implementa la propiedad IsArray y determina si Type es una matriz.

IsAssignableFrom(Type)

Determina si se puede asignar una instancia de un tipo c especificado a una variable del tipo actual.

IsAssignableTo(Type)

Determina si el tipo actual se puede asignar a una variable del targetType especificado.

IsByRefImpl()

Cuando se invalida en una clase derivada, implementa la propiedad IsByRef y determina si Type se pasa por referencia.

IsCOMObjectImpl()

Cuando se invalida en una clase derivada, implementa la propiedad IsCOMObject y determina si Type es un objeto COM.

IsContextfulImpl()

Implementa la propiedad IsContextful y determina si la clase Type puede hospedarse en un contexto.

IsDefined(Type, Boolean)

Cuando se reemplaza en una clase derivada, indica si se aplican a este miembro uno o más atributos del tipo especificado o de sus tipos derivados.

(Heredado de MemberInfo)
IsEnumDefined(Object)

Devuelve un valor que indica si el valor especificado existe en el tipo de enumeración actual.

IsEquivalentTo(Type)

Determina si dos tipos COM tienen la misma identidad y se pueden usar para la equivalencia de tipos.

IsInstanceOfType(Object)

Determina si el objeto especificado es una instancia del objeto Type actual.

IsMarshalByRefImpl()

Implementa la propiedad IsMarshalByRef y determina si las referencias de Type se calculan por referencia.

IsPointerImpl()

Cuando se invalida en una clase derivada, implementa la propiedad IsPointer y determina si Type es un puntero.

IsPrimitiveImpl()

Cuando se invalida en una clase derivada, implementa la propiedad IsPrimitive y determina si Type es uno de los tipos primitivos.

IsSubclassOf(Type)

Determina si el Type actual se deriva del Type especificado.

IsValueTypeImpl()

Implementa la propiedad IsValueType y determina si Type es un tipo de valor; es decir, no es una clase ni una interfaz.

MakeArrayType()

Devuelve un objeto Type que representa una matriz unidimensional del tipo actual, con un límite inferior de cero.

MakeArrayType(Int32)

Devuelve un objeto Type que representa una matriz del tipo actual, con el número de dimensiones especificado.

MakeByRefType()

Devuelve un objeto Type que representa el tipo actual cuando se pasa como un parámetro ref (ByRef en Visual Basic).

MakeGenericMethodParameter(Int32)

Devuelve un objeto de tipo de firma que se puede pasar al parámetro de matriz Type [] de un método GetMethod para representar una referencia de parámetro genérico.

MakeGenericSignatureType(Type, Type[])

Crea un tipo de firma genérico, que permite que las reimplementaciones de la reflexión por parte de terceros admitan totalmente el uso de tipos de firma al consultar los miembros de tipo.

MakeGenericType(Type[])

Sustituye los elementos de una matriz de tipos por los parámetros de tipo de la definición de tipo genérico actual y devuelve un objeto Type que representa el tipo construido resultante.

MakePointerType()

Devuelve un objeto Type que representa un puntero al tipo actual.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ReflectionOnlyGetType(String, Boolean, Boolean)
Obsoleto.

Obtiene el objeto Type con el nombre indicado, que especifica si se va a realizar una búsqueda donde se distingue entre mayúsculas y minúsculas y si se va a producir una excepción en caso de que no se encuentre el tipo. Se carga el tipo solo para reflexión, no para ejecución.

ToString()

Devuelve un valor String que representa el nombre del objeto Type actual.

Operadores

Equality(Type, Type)

Indica si dos objetos Type son iguales.

Inequality(Type, Type)

Indica si dos objetos Type no son iguales.

Implementaciones de interfaz explícitas

_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de MemberInfo)
_MemberInfo.GetType()

Objeto Type que representa la clase MemberInfo.

(Heredado de MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz.

(Heredado de MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de MemberInfo)
_Type.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

_Type.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz.

_Type.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

_Type.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

Métodos de extensión

GetCustomAttribute(MemberInfo, Type)

Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto.

GetCustomAttribute(MemberInfo, Type, Boolean)

Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro.

GetCustomAttribute<T>(MemberInfo)

Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto.

GetCustomAttribute<T>(MemberInfo, Boolean)

Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro.

GetCustomAttributes(MemberInfo)

Recupera una colección de atributos personalizados que se aplican a un miembro especificado.

GetCustomAttributes(MemberInfo, Boolean)

Recupera una colección de atributos personalizados que se aplican a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro.

GetCustomAttributes(MemberInfo, Type)

Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto.

GetCustomAttributes(MemberInfo, Type, Boolean)

Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro.

GetCustomAttributes<T>(MemberInfo)

Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto.

GetCustomAttributes<T>(MemberInfo, Boolean)

Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro.

IsDefined(MemberInfo, Type)

Indica si se deben aplicar atributos personalizados de un tipo especificado a un miembro especificado.

IsDefined(MemberInfo, Type, Boolean)

Indica si los atributos personalizados de un tipo especificado se aplican a un miembro especificado y, opcionalmente, se aplican a sus antecesores.

GetTypeInfo(Type)

Devuelve la representación de TypeInfo del tipo especificado.

GetMetadataToken(MemberInfo)

Obtiene un token de metadatos del miembro determinado, si está disponible.

HasMetadataToken(MemberInfo)

Devuelve un valor que indica si un token de metadatos está disponible para el miembro especificado.

GetRuntimeEvent(Type, String)

Recupera un objeto que representa el evento especificado.

GetRuntimeEvents(Type)

Recupera una colección que representa todos los eventos definidos en un tipo especificado.

GetRuntimeField(Type, String)

Recupera un objeto que representa un campo especificado.

GetRuntimeFields(Type)

Recupera una colección que representa todos los campos definidos en un tipo especificado.

GetRuntimeMethod(Type, String, Type[])

Recupera un objeto que representa un método especificado.

GetRuntimeMethods(Type)

Recupera una colección que representa todos los métodos definidos en un tipo especificado.

GetRuntimeProperties(Type)

Recupera una colección que representa todas las propiedades definidas en un tipo especificado.

GetRuntimeProperty(Type, String)

Recupera un objeto que representa una propiedad especificada.

GetConstructor(Type, Type[])
GetConstructors(Type)
GetConstructors(Type, BindingFlags)
GetDefaultMembers(Type)
GetEvent(Type, String)
GetEvent(Type, String, BindingFlags)
GetEvents(Type)
GetEvents(Type, BindingFlags)
GetField(Type, String)
GetField(Type, String, BindingFlags)
GetFields(Type)
GetFields(Type, BindingFlags)
GetGenericArguments(Type)
GetInterfaces(Type)
GetMember(Type, String)
GetMember(Type, String, BindingFlags)
GetMembers(Type)
GetMembers(Type, BindingFlags)
GetMethod(Type, String)
GetMethod(Type, String, BindingFlags)
GetMethod(Type, String, Type[])
GetMethods(Type)
GetMethods(Type, BindingFlags)
GetNestedType(Type, String, BindingFlags)
GetNestedTypes(Type, BindingFlags)
GetProperties(Type)
GetProperties(Type, BindingFlags)
GetProperty(Type, String)
GetProperty(Type, String, BindingFlags)
GetProperty(Type, String, Type)
GetProperty(Type, String, Type, Type[])
IsAssignableFrom(Type, Type)
IsInstanceOfType(Type, Object)

Se aplica a

Seguridad para subprocesos

Este tipo es seguro para la ejecución de subprocesos.

Consulte también