在我的程序中,我们拆分了大量需要在四个线程中查看的数据。
Thread one = new Thread(delegate() { NewMethod(recordsSplitIntoQuarters[0], param2, param3, param4, param5); });
Thread two = new Thread(delegate() { NewMethod(recordsSplitIntoQuarters[1], param2, param3, param4, param5); });
Thread three = new Thread(delegate() { NewMethod(recordsSplitIntoQuarters[2], param2, param3, param4, param5); });
Thread four= new Thread(delegate() { NewMethod(recordsSplitIntoQuarters[3], param2, param3, param4, param5); });
我们的编码标准要求我们符合 StyleCop,事实上,StyleCop 要求以下:
SA1410:从匿名方法中删除括号,因为委托的参数列表为空。
这样做会给我这个编译器错误:
以下方法或属性之间的调用不明确:“System.Threading.Thread.Thread(System.Threading.ParameterizedThreadStart)”和“System.Threading.Thread.Thread(System.Threading.ThreadStart)”
我已经研究了 ThreadStart 和 ParameterizedThreadStart 对象,但我无法弄清楚如何使用这些对象中的任何一个来完成我需要完成的工作。
我的问题:匿名代表如何工作?他们编译成什么?最后,我将不得不在没有匿名代表的情况下完成这项工作,但我不知道从哪里开始。
谢谢您的帮助,
寻找者