这是我的剧本。
private async void secondmult_Click(object sender, EventArgs e)
{
var sct = sc;
var secondmultx = secondmult;
if (player.pcc == 100)
{
player.multiplier = 2;
player.pcc = player.pcc - 100;
secondmult.Enabled = false;
sct.Text = player.pcc.ToString();
}
else if(player.pcc < 100)
{
sc.Text = "X";
await Thread.Sleep(3000);
sc.Text = player.pcc.ToString();
}
else if(player.pcc > 100)
{
player.multiplier = 2;
player.pcc = player.pcc - 100;
secondmultx.Enabled = false;
sct.Text = player.pcc.ToString();
}
“等待线程”行有错误。睡眠(3000);它说“无法等待”无效“请有人为我重新编写脚本,这样它就可以工作了吗?
线睡眠(3000)是不可等待的。您的方法是异步的,所以理想的实现将是等待任务。延迟(3000)
线程。睡眠将阻塞您当前的线程和任务。延迟将在逻辑上延迟而不阻塞您当前的线程。
线异步操作中不应使用睡眠,而应使用任务。延迟(3000),反之亦然。
<代码>线程。Sleep()不可等待。使用任务。改为Delay()。
使用asyn/wait vs wait有什么区别task.run() 等待任务。运行示例- 异步等待示例-
这是ConcurrentLinkedQueue文档的描述: 基于链接节点的无限线程安全队列。此队列对元素 FIFO(先进先出)进行排序。 。 此实现采用高效的“免等待”算法 是否有可能无界和无等待? 我很确定等待自由确保了任何操作的约束。
我有一个方法如下所示: 我试图这样进行单元测试: 在完成模拟的LookUpIdAsync之前,将调用我的断言。在我的普通代码中,这正是我想要的。但是对于我的单元测试,我不希望这样。 我正在使用BackgroundWorker转换为Async/Await。对于后台工作人员,这项功能正常运行,因为我可以等待后台工作人员完成。 但是似乎没有办法等待异步无效方法... 如何对该方法进行单元测试?
如何在此时等待3秒//等待3秒,然后继续 }
问题内容: 在Bash脚本中,我想执行以下操作: 即,在后台启动两个应用程序,并给它们60秒以完成其工作。然后,如果他们没有在该时间间隔内完成,请杀死他们。 不幸的是,上述内容不起作用,因为它是可执行文件,而它是Shell命令。我尝试将其更改为: 但这仍然行不通,因为只能在同一外壳程序内启动的PID上进行调用。 有任何想法吗? 问题答案: 将PID写入文件并像这样启动应用程序: 这将创建另一个hi
我正在使用某个抛出异常的库,并希望测试在抛出异常时我的代码行为是否正确。将其中一个重载方法截尾似乎不起作用。我得到了这个错误:Stubber不能应用于void。不存在变量类型T的实例类型,因此void确认为T