问题描述
CancellationTokenSource taskController = new CancellationTokenSource();
public Task scheduleAction(Action action,DateTime ExecutionTime)
{
DateTime eastern = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(
DateTime.UtcNow,"Eastern Standard Time");
Task WaitTask = Task.Delay((int)ExecutionTime.Subtract(eastern).TotalMilliseconds,taskController.Token);
WaitTask.ContinueWith(_ => action);
return WaitTask;
}
通过以下几行调用它:
Action start = () => startMonitor();
Task startTask = scheduleAction(start,DateTime.Now.Date + new TimeSpan(8,0));
这样,显示器可以每天8:00开始运行。但是,Status
中的Task
始终是WaitingForActivation
。我尝试使用Start()
方法,它返回了Exception="Start may not be called on a promise-style task."
。
有什么线索使这项工作可行吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)