System.Transaction may fail in multiple-thread environment

When implementing the same System.Transaction concurrently in multiple-threaded environment, for example:   a.                Main thread creates DTC transaction, receives DependentTransaction (created using Transaction.Current.DependentClone on the main thread b.               Child thread 1 enlists in this DTC transaction by creating a transaction scope based on the dependent transaction (passed via constructor) c.                Child thread 1 opens a…

3