No asuma que un subproceso administrado es un subproceso Win32. Podría ser una fibra. El motor de tiempo de ejecución ejecuta ...

No asuma que un subproceso administrado es un subproceso Win32. Podría ser una fibra. El motor de tiempo de ejecución ejecuta subprocesos administrados como fibras sobre los procesos reales propiedad de SQL Server. Estos subprocesos se comparten entre AppDomains e, incluso, bases de datos del proceso de SQL Server. El uso de un almacén local de subprocesos administrados funciona, pero no puede usar un almacén local de subprocesos no administrados ni asumir que el código se ejecutará de nuevo en el subproceso del sistema operativo actual. No cambie valores de configuración como la configuración regional del subproceso. No llame a CreateCriticalSection o CreateMutex mediante P/Invoke, porque requieren que el subproceso que entra en un bloqueo salga también del bloqueo. Puesto que éste no será el caso cuando se usen fibras, las secciones críticas y las exclusiones mutuas de Win32 serán inútiles en SQL Server.
Puede usar con tranquilidad la mayor parte del estado en un objeto System.Thread administrado, incluido un almacén local de subprocesos administrados y la referencia cultural de interfaz de usuario actual del subproceso. No obstante, por motivos del modelo de programación, no podrá cambiar la cultura actual de un subproceso cuando se ejecute en SQL Server (esto se podrá aplicar con un nuevo permiso).
No asuma que un subproceso administrado es un subproceso Win32. Podría ser una fibra. El runtime ejecuta subprocesos administrados como fibras sobre los procesos reales propiedad de SQL Server. Estos subprocesos se comparten entre AppDomains e, incluso, bases de datos del proceso de SQL Server. El uso de un almacén local de subprocesos administrados funciona, pero no puede usar un almacén local de subprocesos no administrados ni asumir que el código se ejecutará de nuevo en el subproceso del sistema operativo actual. No cambie valores de configuración como la configuración regional del subproceso. No llame a CreateCriticalSection o CreateMutex mediante P/Invoke, porque requieren que el subproceso que entra en un bloqueo salga también del bloqueo. Puesto que este no será el caso cuando se usen fibras, las secciones críticas y las exclusiones mutuas de Win32 serán inútiles en SQL Server.
Puede usar con tranquilidad la mayor parte del estado en un objeto System.Thread administrado, incluido un almacén local de subprocesos administrados y la referencia cultural de interfaz de usuario actual del subproceso. No obstante, por motivos del modelo de programación, no podrá cambiar la cultura actual de un subproceso cuando se ejecute en SQL Server (esto se podrá aplicar con un nuevo permiso).