Package.MaxConcurrentExecutables Property
SQL Server 2012
Gets or sets the number of threads that a package can create.
Namespace: Microsoft.SqlServer.Dts.Runtime
Assembly: Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)
Valid values are one and higher, or -1. Other values are invalid. A value of -1 allows the maximum number of concurrently running executables to equal the number of processors plus two. Setting this property to zero or any other negative value fails with an error code that indicates an invalid argument.
This property is used when parallelism exists in the workflow. If the workflow is a series of sequential precedence constraints, then this property has no effect.
The following code example sets the MaxConcurrentExecutables to 1, and sets that value on the ForEachLoop so the ForEachLoop will run one task at a time.