/CLRTHREADATTRIBUTE (Festlegen des CLR-Threadattributs)

Geben Sie das Threadingattribut für den Einstiegspunkt des CLR-Programms explizit an.

Syntax

/CLRTHREADATTRIBUTE:{STA|MTA|NONE}

Parameter

MTA
Wendet das MTAThreadAttribute-Attribut auf den Einstiegspunkt Ihres Programms an.

NONE
Identisch mit der Angabe von /CLRTHREADATTRIBUTE. Ermöglicht der CLR (Common Language Runtime), das Standardthreading-Attribut festzulegen.

STA
Wendet das STAThreadAttribute-Attribut auf den Einstiegspunkt Ihres Programms an.

Hinweise

Das Festlegen des Thread-Attributs ist nur gültig, wenn ein .exe erstellt wird, da es sich auf den Einstiegspunkt des Hauptthreads auswirkt.

Wenn Sie den Standardeinstiegspunkt (z. B. Haupt- oder Wmain) verwenden, geben Sie das Threadingmodell entweder mithilfe von /CLRTHREADATTRIBUTE oder durch Platzieren des Threadingattributs (STAThreadAttribute oder MTAThreadAttribute) in der Standardeingabefunktion an.

Wenn Sie einen nicht standardmäßigen Einstiegspunkt verwenden, geben Sie das Threadmodell entweder mithilfe von /CLRTHREADATTRIBUTE an, oder platzieren Sie das Threadingattribut in der nicht standardmäßigen Einstiegsfunktion, und geben Sie dann den nicht standardmäßigen Einstiegspunkt mit /ENTRY an.

Wenn das im Quellcode angegebene Threadingmodell nicht mit dem threadingmodell übereinstimmt, das mit /CLRTHREADATTRIBUTE angegeben ist, ignoriert der Linker /CLRTHREADATTRIBUTE und wendet das im Quellcode angegebene Threadingmodell an.

Es ist erforderlich, dass Sie singlethreading verwenden, z. B. wenn Ihr CLR-Programm ein COM-Objekt hostt, das singlethreading verwendet. Wenn Ihr CLR-Programm Multithreading verwendet, kann es kein COM-Objekt hosten, das singlethreading verwendet.

So legen Sie diese Linkeroption in der Visual Studio-Entwicklungsumgebung fest

  1. Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).

  2. Wählen Sie die Seite "Konfigurationseigenschaften linker>>Advanced".

  3. Ändern Sie die CLR Thread-Attributeigenschaft .

So legen Sie diese Linkeroption programmgesteuert fest

  1. Siehe CLRThreadAttribute.

Siehe auch

MSVC-Linkerreferenz
MSVC-Linkeroptionen