
private double factor;
}
public class EntryPoint
{
static void Main() {
Processor proc1 = new Processor( 0.75 );
Processor proc2 = new Processor( 0.83 );
ProcessResults[] delegates = new ProcessResults[] {
new ProcessResults( proc1.Compute ),
new ProcessResults( proc2.Compute ),
new ProcessResults( Processor.StaticCompute )
};
ProcessResults chained = (ProcessResults) Delegate.Combine( delegates );
Delegate[] chain = chained.GetInvocationList();
double accumulator = 0;
for( int i = 0; i < chain.Length; ++i ) {
ProcessResults current = (ProcessResults) chain[i];
accumulator += current( 4, 5 );
}
Console.WriteLine( "Output: {0}", accumulator );
}
}
Unbound (Open I ...