[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
Warehouse Job for a warehouse extension (adapter).
This manages initializing the warehouse extension and calling the warehouse extension methods (that is MakeSchemaChanges and MakeDataChanges). It will synchronize these calls with all other registered warehouse extensions.
There are potentially three threads running in this code. Each thread can only execute a limited number of methods.
Thread 1: Main thread - from Job Agent thread pool.
Executes RunInternal. Controls when other threads are active.
Thread 2: Schema Lock Time thread - started in MakeSchemaChanges and only calls CheckSchemaLockQueue. Requires valid adapter instance.
Thread 3: Request Context Cancel thread - from Request Context cancellation "notification" Only calls Cancel - only possibly active between calls to EnterCancelableRegion and ExitCancelableRegion. During Cancel TeamFoundationRequestContext locks Enter/ExitCancelableRegion calls (internal list tracking cancelable objects is locked).
Locking is here to handle the case when the Timer thread is trying to execute methods on the adapter after it has been disposed by the main thread.
Assembly: Microsoft.TeamFoundation.Warehouse (in Microsoft.TeamFoundation.Warehouse.dll)
Thetype exposes the following members.
|Equals||Determines whether the specified object is equal to the current object. (Inherited from Object.)|
|Finalize||Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)|
|GetHashCode||Serves as the default hash function. (Inherited from Object.)|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|MemberwiseClone||Creates a shallow copy of the current Object. (Inherited from Object.)|
|Run||(Inherited from WarehouseJobExtension.)|
|ToString||Returns a string that represents the current object. (Inherited from Object.)|