¿Hay alguna manera de hacer que los hilos recién engendrados hereden los valores del estado de ThreadStatic (o algo similar) en sus hilos padre? Me gustaría utilizar esto (o algo similar) para implementar variables especiales de "ámbito dinámico" que contengan información de contexto de operación/tarea para usar para rastrear/registrar, etc. ¿Es este un enfoque razonable, y se puede hacer que funcione?Heredar valores de ThreadStatic para implementar el ámbito dinámico en C#/.NET en contexto multiproceso
6
A
Respuesta
6
No se pueden "heredar" los valores. Sin embargo, el nuevo ThreadLocal<T>
class para .NET 4 le permite proporcionar un Func<T>
en el constructor, que puede inicializar el hilo según el estado del padre. Esto proporcionaría una solución razonable.
Cuestiones relacionadas
- 1. Ámbito dinámico en Clojure?
- 2. ¿Es posible implementar el bloqueo de ámbito en C#?
- 3. JavaScript Ámbito y contexto de ejecución
- 4. Manejo adecuado de GetLastError (y otros) en un contexto multiproceso
- 5. ¿Cómo crear variables de ámbito dinámico en Python?
- 6. CallContext vs ThreadStatic
- 7. FAIL - No se pudo implementar la aplicación en la ruta de contexto/ROOT. Implementar el complemento de jenkins para implementar
- 8. ¿Cómo funciona el atributo ThreadStatic?
- 9. Acceso a los beans de ámbito solicitado en una aplicación web multiproceso
- 10. Diferencia de rendimiento para multiproceso y multiproceso
- 11. utiliza para el alcance dinámico?
- 12. Reglas para heredar clase
- 13. ¿Cómo implementar un cliente dinámico de OData en C#?
- 14. tenedor en el programa multiproceso
- 15. léxico vs ámbito dinámico en términos del modelo de Medio Ambiente de SICP de Evaluación
- 16. constantes ámbito de aplicación a un contexto rspec
- 17. Eliminación determinista de objetos ThreadStatic
- 18. ¿Cómo implementar IEqualityComparer para devolver valores distintos?
- 19. Tareas inadecuadas para el alcance dinámico
- 20. Valores de propiedades de contexto inicial para la búsqueda EJB
- 21. ¿Cómo implementar "grupo por valores" en NSMutableArray?
- 22. Ámbito de la variable en Javascript para el bucle
- 23. Javascript Ámbito en función inyectada
- 24. Redundante para heredar Objeto en C#?
- 25. Además de Logo y Emacs Lisp, ¿cuáles son otros lenguajes de ámbito dinámico puro?
- 26. JavaScript multiproceso en IE6?
- 27. ¿Variable de acceso en el ámbito externo?
- 28. ¿Cómo cambiar la raíz de contexto de un proyecto web dinámico en Eclipse?
- 29. Compresión multiproceso en C#
- 30. Heredar de instancia en Python
Gracias, esto es ciertamente interesante. Pero, ¿cómo permitiría que el niño acceda al estado de los padres? –
Puede utilizar una lambda en el elemento primario que proporcione acceso a la (s) variable (s) en cuestión que son necesarias para iniciar el ThreadLocal. Esto utiliza una forma de inicialización lenta, por lo que en el primer uso, obtendría el estado del padre actual. –
esto no hizo lo que necesitaba en ese momento por alguna razón que he olvidado, pero fue bueno saber de todos modos. –