public Result CallDirectVirtual(Processor2 processor, int iterations) { int sum = 0; Counter counter = new Counter(); counter.Start(); for (int i = 0; i < iterations; i++) { sum += processor.ProcessV(i); } counter.Stop(); theSum = sum; return(new Result("DirectVirtual", iterations, counter.Seconds, 0.0F)); }
public Result CallDirectStatic(int iterations) { int sum = 0; Counter counter = new Counter(); counter.Start(); for (int i = 0; i < iterations; i++) { sum += Processor2.ProcessStatic(i); } counter.Stop(); theSum = sum; return(new Result("DirectStatic", iterations, counter.Seconds, 0.0F)); }
public ArrayList Call(int iterations) { ArrayList results = new ArrayList(); Processor processor = new Processor(); Processor2 processor2 = new Processor2(); results.Add(CallDirect(processor, iterations)); results.Add(CallInvoke(processor, iterations)); results.Add(CallInterface(processor, iterations)); results.Add(CallDelegate(processor, iterations)); results.Add(CallCustomDelegate(processor, iterations)); results.Add(CallCustomClass(processor, iterations)); results.Add(CallDirectVirtual(processor2, iterations)); results.Add(CallInterfaceVirtual(processor2, iterations)); results.Add(CallDirectStatic(iterations)); results.Add(CallMethodInfo(processor, iterations)); return(results); }