Aplique este atributo al método de punto de entrada (método Main() en C# y Visual Basic). No tiene ningún efecto en otros métodos. Para establecer el estado de tipo apartamento de los subprocesos que se inician en el código, utilice el método Thread.SetApartmentState antes de iniciar el subproceso.
Nota |
|---|
| En las versiones 1.0 y 1.1 de .NET Framework, establezca la propiedad Thread.ApartmentState antes de iniciar el subproceso. |
Los modelos de subprocesamiento de COM sólo pertenecen a las aplicaciones que utilizan la interoperabilidad COM. El uso de este atributo en una aplicación que no utilice la interoperabilidad COM no tendrá ningún efecto.
El modelo de subprocesamiento de COM puede establecerse en apartamentos de subproceso único o en apartamentos multiproceso. El subproceso de la aplicación sólo se inicializa para interoperabilidad COM si realmente realiza alguna llamada a un componente COM. Si no se utiliza la interoperabilidad COM, el subproceso no se inicializa.
En las versiones 1.0 y 1.1 de .NET Framework, utilice este atributo en Main() en lugar de establecer la propiedad Thread.ApartmentState en la primera línea de código, para garantizar que el modelo de subprocesamiento queda establecido antes de que se ejecute un código de inicio.
Importante: |
|---|
| En la versión 2.0 de .NET Framework, los nuevos subprocesos se inicializan como ApartmentState.MTA si no se ha establecido su estado de tipo apartamento antes de que se inicien. El subproceso de la aplicación principal se inicializa de forma predeterminada en ApartmentState.MTA. Ya no es posible establecer el subproceso de la aplicación principal en ApartmentState.STA estableciendo la propiedad Thread.ApartmentState en la primera línea de código. En su lugar, utilice STAThreadAttribute. |
En la versión 2.0 de .NET Framework, también puede especificar el modelo de subprocesamiento de COM para una aplicación de C++ utilizando la opción del vinculador /CLRTHREADATTRIBUTE (Establecer el atributo de subproceso de CLR).
Las aplicaciones ASP.NET deben establecer el atributo ASPCompat de la directiva @ Page en true para obligar a que el grupo de subprocesos STA sea el responsable de dar servicio a la página.