SynchronizationAttribute Class
Definition
Sets the synchronization value of the component. This class cannot be inherited.
public ref class SynchronizationAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, Inherited=true)]
[System.Runtime.InteropServices.ComVisible(false)]
public sealed class SynchronizationAttribute : Attribute
type SynchronizationAttribute = class
inherit Attribute
Public NotInheritable Class SynchronizationAttribute
Inherits Attribute
- Inheritance
- Attributes
Examples
The following code example demonstrates the use of the SynchronizationAttribute type.
using System;
using System.EnterpriseServices;
using System.Reflection;
// References:
// System.EnterpriseServices
// This is equivalent to [Synchronization(SynchronizationOption.Required)].
[Synchronization]
public class SynchronizationAttribute_Ctor : ServicedComponent
{
}
[Synchronization(SynchronizationOption.Disabled)]
public class SynchronizationAttribute_Ctor_SynchronizationOption : ServicedComponent
{
}
[Synchronization(SynchronizationOption.RequiresNew)]
public class SynchronizationAttribute_Value : ServicedComponent
{
public void ValueExample()
{
// Get the SynchronizationAttribute applied to the class.
SynchronizationAttribute attribute =
(SynchronizationAttribute)Attribute.GetCustomAttribute(
this.GetType(),
typeof(SynchronizationAttribute),
false);
// Display the value of the attribute's Value property.
Console.WriteLine("SynchronizationAttribute.Value: {0}",
attribute.Value);
}
}
Imports System.EnterpriseServices
Imports System.Reflection
' References:
' System.EnterpriseServices
' This is equivalent to [Synchronization(SynchronizationOption.Required)].
<Synchronization()> _
Public Class SynchronizationAttribute_Ctor
Inherits ServicedComponent
End Class
<Synchronization(SynchronizationOption.Disabled)> _
Public Class SynchronizationAttribute_Ctor_SynchronizationOption
Inherits ServicedComponent
End Class
<Synchronization(SynchronizationOption.RequiresNew)> _
Public Class SynchronizationAttribute_Value
Inherits ServicedComponent
Public Sub ValueExample()
' Get the SynchronizationAttribute applied to the class.
Dim attribute As SynchronizationAttribute = CType(Attribute.GetCustomAttribute(Me.GetType(), GetType(SynchronizationAttribute), False), SynchronizationAttribute)
' Display the value of the attribute's Value property.
MsgBox("SynchronizationAttribute.Value: " & attribute.Value)
End Sub
End Class
Remarks
Both transaction and just-in-time (JIT) activation enable synchronization automatically.
For more information about using attributes, see Attributes.
Applying SynchronizationAttribute to a context-bound object results in the creation of a wait handle and auto reset event, which are not deterministically garbage collected. Therefore, you should not create a large number of context-bound objects marked with the SynchronizationAttribute
within a short time period.
Constructors
SynchronizationAttribute() |
Initializes a new instance of the SynchronizationAttribute class with the default SynchronizationOption. |
SynchronizationAttribute(SynchronizationOption) |
Initializes a new instance of the SynchronizationAttribute class with the specified SynchronizationOption. |
Properties
TypeId |
When implemented in a derived class, gets a unique identifier for this Attribute. (Inherited from Attribute) |
Value |
Gets the current setting of the Value property. |
Methods
Equals(Object) |
Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute) |
GetHashCode() |
Returns the hash code for this instance. (Inherited from Attribute) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
IsDefaultAttribute() |
When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class. (Inherited from Attribute) |
Match(Object) |
When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
Explicit Interface Implementations
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Provides access to properties and methods exposed by an object. (Inherited from Attribute) |