Cliquez pour évaluer et commenter
MSDN
MSDN Library
Développement .NET
Versions précédentes
.NET Framework SDK 2.0
Class Library Reference
System
ThreadStaticAttribute, classe

  Passer à l'affichage pour faible bande passante
Cette page est spécifique à
Microsoft Visual Studio 2005/.NET Framework 2.0

D'autres versions sont également disponibles pour :
Bibliothèque de classes .NET Framework
ThreadStaticAttribute, classe

Indique que la valeur d'un champ statique est unique pour chaque thread.

Espace de noms : System
Assembly : mscorlib (dans mscorlib.dll)

Visual Basic (Déclaration)
<SerializableAttribute> _
<AttributeUsageAttribute(AttributeTargets.Field, Inherited:=False)> _
<ComVisibleAttribute(True)> _
Public Class ThreadStaticAttribute
    Inherits Attribute
Visual Basic (Utilisation)
Dim instance As ThreadStaticAttribute
C#
[SerializableAttribute] 
[AttributeUsageAttribute(AttributeTargets.Field, Inherited=false)] 
[ComVisibleAttribute(true)] 
public class ThreadStaticAttribute : Attribute
C++
[SerializableAttribute] 
[AttributeUsageAttribute(AttributeTargets::Field, Inherited=false)] 
[ComVisibleAttribute(true)] 
public ref class ThreadStaticAttribute : public Attribute
J#
/** @attribute SerializableAttribute() */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Field, Inherited=false) */ 
/** @attribute ComVisibleAttribute(true) */ 
public class ThreadStaticAttribute extends Attribute
JScript
SerializableAttribute 
AttributeUsageAttribute(AttributeTargets.Field, Inherited=false) 
ComVisibleAttribute(true) 
public class ThreadStaticAttribute extends Attribute

Un champ static marqué avec ThreadStaticAttribute n'est pas partagé d'un thread à un autre. Chaque thread en cours d'exécution possède une instance distincte du champ et définit et obtient séparément des valeurs pour ce champ. Si l'accès au champ s'effectue sur un thread différent, il contiendra une valeur différente.

RemarqueRemarque

Ne spécifiez pas de valeurs initiales pour les champs marqués avec ThreadStaticAttribute. En effet, cette initialisation n'a lieu qu'une seule fois, lors de l'exécution du constructeur de classe, et elle n'affecte donc qu'un seul thread. Si aucune valeur initiale n'est spécifiée, vous êtes assuré que le champ sera initialisé à sa valeur par défaut s'il s'agit d'un type valeur, ou à référence Null (Nothing en Visual Basic) s'il s'agit d'un type référence.

Utilisez cet attribut tel quel, sans effectuer de dérivation. Ceci est un exemple d'utilisation de la syntaxe de ThreadStaticAttribute :

 [ThreadStatic]
 static int value;
 <ThreadStatic> _
 Shared value As Integer

Pour plus d'informations sur l'utilisation des attributs, consultez Extension des métadonnées à l'aide des attributs.

System.Object
   System.Attribute
    System.ThreadStaticAttribute
Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0
Contenu de la communauté   Qu'est-ce que le Contenu de la communauté ?
Ajouter du contenu RSS  Annotations
Processing
© 2009 Microsoft Corporation. Tous droits réservés. Conditions d'utilisation  |  Marques  |  Confidentialité
Page view tracker