C#custom task.run()不执行函数 [英] C# custom task.run() does not execute function

查看:1422
本文介绍了C#custom task.run()不执行函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个非常简单的自定义Task.Run()方法。

使用.net Task.Run()方法工作正常,自定义方法不执行操作。





有什么想法吗?



我尝试了什么:



用法:

 //工作
Task.Run(()=> TestTasks .CustomTasks.DummyTask());

//不起作用
TestHelpers.Tasks.Run(TestTasks.CustomTasks.DummyTask);



代码:

命名空间TestHelpers 
{
公共静态类任务
{
public static string Run(Action action)
{
try
{
Task.Run(()=> action);
返回ok;
}
catch(exception ex)
{
return ex.Message;
}

}
}
}

命名空间TestTasks
{
公共静态类CustomTasks
{
public static void DummyTask()
{
for(int i = 0; i< 10; i ++)
System.Threading.Thread.Sleep(100);
}
}
}

解决方案

您必须替换

任务。运行(()=>动作); 



by

 Task.Run(action); 



请查看 Task.Run方法(System.Threading.Tasks)| Microsoft Docs [ ^ ]

语法为

 public static System.Threading.Tasks.Task Run(Action action); 


I have a very simple custom Task.Run() method.
Using the .net Task.Run() method works fine, the custom method does not execute the action.


Any ideas?

What I have tried:

Usage:

//works
      Task.Run(() => TestTasks.CustomTasks.DummyTask());

      //does not work
      TestHelpers.Tasks.Run(TestTasks.CustomTasks.DummyTask);


Code:

namespace TestHelpers
{
    public static class Tasks
    {
        public static string Run(Action action)
        {
            try
            {
                Task.Run(() => action);
                return "ok";
            }
            catch (Exception ex)
            {
                return ex.Message;
            }

        }
    }
}

namespace TestTasks
{
    public static class CustomTasks
    {
        public static void DummyTask()
        {
            for (int i = 0; i < 10; i++)
                System.Threading.Thread.Sleep(100);
        }
    }
}

解决方案

You must replace

Task.Run(() => action);


by

Task.Run(action);


Please have a look at Task.Run Method (System.Threading.Tasks) | Microsoft Docs[^]
The syntax is

public static System.Threading.Tasks.Task Run (Action action);


这篇关于C#custom task.run()不执行函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆