InterfaceQueuingAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Active la prise en charge de la mise en file d’attente pour l’interface marquée. Cette classe ne peut pas être héritée.
public ref class InterfaceQueuingAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true, Inherited=true)]
[System.Runtime.InteropServices.ComVisible(false)]
public sealed class InterfaceQueuingAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true, Inherited=true)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
type InterfaceQueuingAttribute = class
inherit Attribute
Public NotInheritable Class InterfaceQueuingAttribute
Inherits Attribute
- Héritage
- Attributs
Exemples
L’exemple de code suivant montre comment utiliser l’attribut InterfaceQueuingAttribute .
public interface class IQueuedComponent
{
void QueuedTask();
};
// Mark IQueuedComponent interface as queued
// Create the queued component class by inheriting the
// System.EnterpriseServices.ServicedComponent class and an
// interface that is marked as queued with the InterfaceQueuing attribute
[InterfaceQueuing(true,Interface="IQueuedComponent")]
public ref class QueuedComponent sealed: public ServicedComponent, public IQueuedComponent
{
public:
virtual void QueuedTask()
{
// Perform queued task here
}
};
public interface IQueuedComponent
{
void QueuedTask();
}
// Mark IQueuedComponent interface as queued
[InterfaceQueuing(true, Interface="IQueuedComponent")]
// Create the queued component class by inheriting the
// System.EnterpriseServices.ServicedComponent class and an
// interface that is marked as queued with the InterfaceQueuing attribute
public class QueuedComponent : ServicedComponent, IQueuedComponent
{
public void QueuedTask()
{
// Perform queued task here
}
}
L’exemple de code suivant montre comment marquer une application COM+ comme mise en file d’attente au moment de la compilation à l’aide de l’attribut ApplicationQueuing et activer l’écouteur COM+ en définissant la QueueListenerEnabled valeur true
// Mark the COM+ application as queued at compile time by using the
// ApplicationQueuing attribute. Enable the COM+ listener by
// setting the QueueListenerEnabled to true
[assembly:ApplicationQueuing(Enabled=true,QueueListenerEnabled=true)];
// Mark the COM+ application as queued at compile time by using the
// ApplicationQueuing attribute. Enable the COM+ listener by
// setting the QueueListenerEnabled to true
[assembly: ApplicationQueuing(Enabled=true, QueueListenerEnabled=true)]
L’exemple de code suivant montre comment utiliser BindToMoniker pour exécuter le moniker mis en file d’attente, pour obtenir une instance de l’enregistreur, appeler la méthode qui sera enregistrée et forcer la libération de l’objet enregistreur, pour envoyer le message à la file d’attente.
// Use BindToMoniker to run the queued moniker, to get an instance of the recorder
IQueuedComponent ^ qc = dynamic_cast<IQueuedComponent^>(System::Runtime::InteropServices::Marshal::BindToMoniker( "queue:/new:QueuedComponent" ));
// Call the method that will be recorded
qc->QueuedTask();
// Force the release of the recorder object, to send the message to the queue
System::Runtime::InteropServices::Marshal::ReleaseComObject( qc );
// Use BindToMoniker to run the queued moniker, to get an instance of the recorder
IQueuedComponent qc =
(IQueuedComponent)System.Runtime.InteropServices.Marshal.BindToMoniker("queue:/new:QueuedComponent");
// Call the method that will be recorded
qc.QueuedTask();
// Force the release of the recorder object, to send the message to the queue
System.Runtime.InteropServices.Marshal.ReleaseComObject(qc);
Remarques
Les appels sur cette interface sont mis en file d’attente à l’aide de Message Queuing.
Pour marquer une interface comme mise en file d’attente, appliquez cet attribut à l’interface à l’aide de la syntaxe suivante : [InterfaceQueuing].
Les méthodes membres d’une interface mise en file d’attente doivent respecter les exigences relatives aux appels de méthode mis en file d’attente, telles que l’absence out ou ref les paramètres.
Pour plus d’informations sur l’utilisation d’attributs, consultez Attributs.
Constructeurs
| Nom | Description |
|---|---|
| InterfaceQueuingAttribute() |
Initialise une nouvelle instance de la InterfaceQueuingAttribute classe définissant les propriétés et Interface les Enabled valeurs par défaut. |
| InterfaceQueuingAttribute(Boolean) |
Initialise une nouvelle instance de la classe, en désactivant éventuellement la prise en charge de la InterfaceQueuingAttribute mise en file d’attente. |
Propriétés
| Nom | Description |
|---|---|
| Enabled |
Obtient ou définit une valeur indiquant si la prise en charge de la mise en file d’attente est activée. |
| Interface |
Obtient ou définit le nom de l’interface sur laquelle la mise en file d’attente est activée. |
| TypeId |
En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute. (Hérité de Attribute) |
Méthodes
| Nom | Description |
|---|---|
| Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| GetHashCode() |
Retourne le code de hachage pour cette instance. (Hérité de Attribute) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| IsDefaultAttribute() |
En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée. (Hérité de Attribute) |
| Match(Object) |
En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface. (Hérité de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l’accès aux propriétés et méthodes exposées par un objet. (Hérité de Attribute) |