我不知何故觉得我缺少一些基本的东西。这是我的问题。
我正在尝试创建一个 System.Threading.Tasks.Task 实例来执行接受某种类型参数的操作。我以为我可以做类似的事情
void DoWork(MyClass obj) {} //My action that accepts a parameter of type 'MyClass'
MyClass obj = new MyClass();
Action<MyClass> action = DoWork; //action that points to the method
Task task = new Task(action,obj); //task that would execute 'DoWork' with 'obj' as the parameter when I call Start.
显然这不会编译。似乎我只能将 anAction<object>
而不是 anAction<T>
用于任务,然后在我的方法中将“对象”转换为 T 。
我怎样才能最有效地实现我想要的?