Application.NotificationThrottle Property

Gets or sets the maximum number of notifications that can be processed in a single notification class during a single generator quantum.

Namespace: Microsoft.SqlServer.Management.Nmo
Assembly: Microsoft.SqlServer.Smo (in microsoft.sqlserver.smo.dll)

Syntax

'Declaration
Public Property NotificationThrottle As Integer
public int NotificationThrottle { get; set; }
public:
property int NotificationThrottle {
    int get ();
    void set (int value);
}
/** @property */
public int get_NotificationThrottle ()

/** @property */
public void set_NotificationThrottle (int value)
public function get NotificationThrottle () : int

public function set NotificationThrottle (value : int)

Property Value

An Int32 value that specifies the maximum number of notifications that can be processed in a single notification class during a single generator quantum.

Remarks

Use this property to guard against large numbers of notifications being generated.

During each quantum, the generator runs rules that generate notifications. If the notification throttle is exceeded, the generator throws an error and stops the rule. Other rules within the quantum are not affected unless they also exceed the throttle value.

Updated text:5 December 2005

If you use the Application(Instance,String) constructor, the default value is 1000. If you use the default constructor, you must set this property.

To turn off the notification throttle, use the value 0.

Example

The following examples show how to set all application execution settings, including the notification throttle:

// Define application execution settings
myApplication.QuantumDuration = new TimeSpan(0, 0, 15);
myApplication.PerformanceQueryInterval = new TimeSpan(0, 0, 5);
myApplication.SubscriptionQuantumLimit = 1;
myApplication.ChronicleQuantumLimit = 1;
myApplication.VacuumRetentionAge = new TimeSpan(0, 0, 1);
myApplication.LogBeforeDeliveryAttempts = false;
myApplication.LogNotificationText = false;
myApplication.LogStatusInfo = false;
myApplication.EventThrottle = 500;
myApplication.NotificationThrottle = 500;
myApplication.SubscriptionThrottle = 500;
myApplication.ProcessEventsInOrder = false;
' Define application execution settings
myApplication.QuantumDuration = New TimeSpan(0, 0, 15)
myApplication.PerformanceQueryInterval = New TimeSpan(0, 0, 5)
myApplication.SubscriptionQuantumLimit = 1
myApplication.ChronicleQuantumLimit = 1
myApplication.VacuumRetentionAge = New TimeSpan(0, 0, 1)
myApplication.LogBeforeDeliveryAttempts = False
myApplication.LogNotificationText = False
myApplication.LogStatusInfo = False
myApplication.EventThrottle = 500
myApplication.NotificationThrottle = 500
myApplication.SubscriptionThrottle = 500
myApplication.ProcessEventsInOrder = False

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

Application Class
Application Members
Microsoft.SqlServer.Management.Nmo Namespace

Other Resources

Specifying Throttles for Events, Subscriptions, and Notifications
NotificationThrottle Element (ADF)