这是我第一次实现Task.Factory.StartNew,所以我对此并不了解。我有一个返回布尔值并带有参数的函数。现在,我已经使用Task.Factory.StartNew调用了我的函数。
Task.Factory.StartNew(Function() Myfunction(stringvalue))
当我处于调试模式时,它可以工作并执行所有操作。但是当我在没有调试的情况下运行它时,它将无法正常工作。我已经在该函数中放置了一个Response.Write,它没有执行,所以它只是没有进入该函数。
下面是显示我要做什么的函数
我的按钮点击事件
Private Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click
Tasks.Task.Factory.StartNew(Function() Myfunction("Somevalue"))
End Sub
我的功能
Private Function Myfunction(ByVal str as String) as Boolean
Dim isSuccess as Boolean = False
Dim Id as Integer = SomeOtherFunction(str)
If Id > 0 Then
isSuccess = AnotherFunction(Id)
End If
Return isSuccess
End Function
如果我使用Tasks.Task.Factory.StartNew(Function()Myfunction(“ Somevalue”))。Start(),它可以正常工作并且可以完成该功能,但是我却收到异常提示-“开始可能不会在已经开始的任务上被调用”
我在做什么错了?