2009-05-10 13 views
8

Sé que cuando ejecuta algún método en paralelo llamando a BeginInvoke() o ThreadPool.QueueUserWorkItem (...) .NET framework captura el objeto ExecutionContext que contiene información de seguridad de acceso de código y algunos otros cosas.Cómo incluir datos propios en ExecutionContext

Lo que quiero es incluir en ExecutionContext algunos datos que necesita mi método paralelo, pero también se deben capturar en el momento de poner en cola la tarea.

El problema es que no siempre tengo control sobre el código que está creando esta tarea paralela, así que debo encontrar una manera de almacenar esta información antes de llamar a este código externo. Por eso pensé en la clase ExecutionContext.

¿Hay alguna manera de pasar un estado la tarea paralela cuando no siempre estoy en el control del código que está dividiendo el trabajo entre subprocesos?

+0

Es desafortunado que usted no controla el código de colas - las variables capturadas o los campos de clase serían ideales. –

Respuesta

0

No sé cómo se relaciona con ExecutionContext, pero en el pasado, podíamos crear objetos vinculados al contexto. Ver Context class. Ignore el hecho de que esta clase particular es para infraestructura: el artículo es un punto de partida para aprender sobre contextos.

Cuestiones relacionadas