DtsPipelineComponentAttribute.SupportsBackPressure Property

Identifies the component as one that supports more than one input, and implements the optional methods for handling excessive memory usage if the inputs produce data at uneven rates.

Namespace:  Microsoft.SqlServer.Dts.Pipeline
Assembly:  Microsoft.SqlServer.PipelineHost (in Microsoft.SqlServer.PipelineHost.dll)

Syntax

'Declaration
Public Property SupportsBackPressure As Boolean 
    Get 
    Set
'Usage
Dim instance As DtsPipelineComponentAttribute 
Dim value As Boolean 

value = instance.SupportsBackPressure

instance.SupportsBackPressure = value
public bool SupportsBackPressure { get; set; }
public:
property bool SupportsBackPressure {
    bool get ();
    void set (bool value);
}
member SupportsBackPressure : bool with get, set
function get SupportsBackPressure () : boolean 
function set SupportsBackPressure (value : boolean)

Property Value

Type: System.Boolean
true if the component supports more than one input and implements the optional methods for handling excessive memory usage if the inputs produce data at uneven rates; otherwise, false.

Remarks

The first step in implementing better memory management for a custom data flow component that supports multiple inputs is to set the value of the SupportsBackPressure property to true in the T:Microsoft.SqlServer.Dts.Pipeline.DtsPipelineComponentAttribute. When the value of SupportsBackPressure is true, the data flow engine calls the PipelineComponent.IsInputReady method and, when there are more than two inputs, the PipelineComponent.GetDependentInputs method at run time.

For more information about the handling of excessive memory usage if the inputs of a custom data flow component produce data at uneven rates, see Developing Data Flow Components with Multiple Inputs.

Examples

In the following example, the implementation of the DtsPipelineComponentAttribute class sets the value of the SupportsBackPressure property to true.

[DtsPipelineComponent(ComponentType = ComponentType.Transform,
        DisplayName = "Shuffler",
        Description = "Shuffle the rows from input.",
        SupportsBackPressure = true,
        LocalizationType = typeof(Localized),
        IconResource = "Microsoft.Samples.SqlServer.Dts.MIBPComponent.ico")
]
public class Shuffler : Microsoft.SqlServer.Dts.Pipeline.PipelineComponent
        {
          ...
        }

See Also

Reference

DtsPipelineComponentAttribute Class

Microsoft.SqlServer.Dts.Pipeline Namespace