예제 #1
0
 public operationTiming(IOperationResultComparer operation,
                        Tuple <long, long> timing)
 {
     Operation = operation;
     Start     = timing.Item1;
     End       = timing.Item2;
 }
            public void RunSingleOperation()
            {
                IOperationResultComparer operation
                    = eParams.Operations[nextOperation];

                operation.RunOnLinkedList(state);
                nextOperation++;
            }
 public operationExecutionInfo(
     operationTiming operationTiming, int executorIndex)
 {
     ExecutorIndex = executorIndex;
     Operation     = operationTiming.Operation;
     Start         = operationTiming.Start;
     End           = operationTiming.End;
 }
            private Tuple <long, long> processOperation(
                IOperationResultComparer op, Counter ctr)
            {
#if SynchronizedLfdll_verbose
                Console.WriteLine("({0}) Nächste Operation: {1}", Name, op);
                Console.WriteLine("({0}) Aktueller Knoten:", Name);
                state.List.LogNode(state.Current);
#endif

                Tuple <long, long> timing = measureTime(
                    () =>
                {
                    op.RunOnLfdll(state);
                },
                    ctr);

#if SynchronizedLfdll_verbose
                Console.WriteLine("({0}) Beendete Operation: {1}", Name, op);
#endif

                return(timing);
            }