在桌面框架中,我可以使用asynchronously
:
BeginInvoke()
Action<string> myAction;
myString = "i am string";
myAction.BeginInvoke(myString, res => {
myAction.EndInvoke(res);
}, null);
但在Windows Phone
我无法做到,因为不能运行委托asynchronously
。
所以,当我尝试用Task
运行委托时,我有错误:
任务ts = Task.Factory.StartNew(myAction);
错误:无法将"System.Action <string>"
转换为"System.Action"
。当然,我应该提交我的字符串。
任何想法。
谢谢你。
答案 0 :(得分:3)
只需使用lambda将参数传递给函数:
Task ts = Task.Factory.StartNew(() => myAction(myString));