DtsPipelineComponentAttribute.SupportsBackPressure Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает, что компонент поддерживает несколько потоков входа и реализует необязательные методы для обработки избыточного использования памяти, если потоки входа предоставляют данные с различными скоростями.
public:
property bool SupportsBackPressure { bool get(); void set(bool value); };
public bool SupportsBackPressure { get; set; }
member this.SupportsBackPressure : bool with get, set
Public Property SupportsBackPressure As Boolean
Значение свойства
Значение true, если компонент поддерживает несколько входных данных и реализует необязательные методы обработки чрезмерного использования памяти, если входные данные создаются с неравномерной скоростью; в противном случае — значение false.
Примеры
В следующем примере реализация DtsPipelineComponentAttribute класса задает для свойства true
значение SupportsBackPressure .
[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
{
...
}
Комментарии
Первым этапом реализации усовершенствованного управления ресурсами памяти для пользовательского компонента потока данных, поддерживающего несколько входов, является задание значения свойства SupportsBackPressure равным true
в T:Microsoft.SqlServer.Dts.Pipeline.DtsPipelineComponentAttribute
. Если значение SupportsBackPressure равно true
, обработчик потока данных вызывает Microsoft.SqlServer.Dts.Pipeline.PipelineComponent.IsInputReady метод и, когда во время выполнения имеется более двух входных данных, Microsoft.SqlServer.Dts.Pipeline.PipelineComponent.GetDependentInputs метод вызывается.
Дополнительные сведения об обработке чрезмерного использования памяти, если входные данные пользовательского компонента потока данных создают данные с неравномерной скоростью, см. в разделе "Разработка компонентов Поток данных с несколькими входными данными".