如前所述,在TODO:中,这就像是我想要在中止后等待CurrentTask完成,然后再开始一个新任务。但我知道这将提供糟糕的用户体验,因为UI线程将被阻塞,直到旧任务完成。有没有更好的方法来跟踪多个AsyncTasks,确保新的可以按需启动,旧的可以正确中止,而不需要进一步的UI更新?似乎没有一个好的方法来追踪CurrentTask..。= new BackgroundWorker(); this
当用户单击"START“按钮时,这一系列操作就开始了,这是由backgroundWorker1_DoWork()中的后台工作程序完成的。我正在考虑在代码中实现以下内容,在开始另一个操作序列之前,使用while循环“杀死”后台工作程序:{
while (backgroundWorker1.IsBusy == true)
我正在使用后台工作人员来处理数据,而用户仍然可以自由地单击另一个中止该进程的按钮。但是,后台工作者中的代码需要几个数据,例如,它需要知道是否选中了单选按钮。BackgroundWorker1.RunWorkerAsync()
Private Sub BackgroundWorker1_DoWork(ByVal senderAs Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker