public static void UpdatePositiveMultitherading(this BackpropagationNetwork backpropagation, double[] Input) { // Check parameters if (Input.Length != backpropagation.InputNeurons.Length) { throw new ArgumentException("Invalid input array, its size is different from the number of input neurons.", nameof(Input)); } // Update input neurons Parallel.For(0, backpropagation.InputNeurons.Length, delegate(int i) { backpropagation.InputNeurons[i].Update(Input[i]); }); // Sequential update neurons backpropagation.SequentialUpdateMultitherading(0); }