¿Este subproceso de método de extensión es seguro?¿El subproceso del método de extensión es seguro?
public static class Extensions
{
public static void Raise<T>(this EventHandler<T> handler,
object sender, T args) where T : EventArgs
{
if (handler != null) handler(sender, args);
}
}
o necesito cambiarlo a esto?
public static class Extensions
{
public static void Raise<T>(this EventHandler<T> handler,
object sender, T args) where T : EventArgs
{
var h = handler;
if (h!= null) h(sender, args);
}
}
diseño e implementación detalles de eventos con respecto a enhebrar http://stackoverflow.com/questions/786383/c-events-and-thread-safety – user44298