如果我们想在计划之前实现延迟执行,我们可以使用管道阻止它。直到有人在管道中写东西才能顺利进行更改。我们还可以使用睡眠来睡眠,但是睡眠的过程,Coroutine还可以占用资源和资源,占用资源和资源并占用资源并占用资源。像睡觉一样睡觉时不会占用资源。
让我们看一下以下代码:
运行结果是:
我们可以看到操作的结果基本上与我们要实现的目的相同。在创建三秒钟的计时器之后,可以在三秒钟后读取时间。
让我们看一下:
根据以下代码,此C是一个仅读取的频道:
如果您想描述一个通道频道,则应这样写:
但是,如果我们想实现相同的目的,我们可以使用以下更简单的方式:
使用等待一段时间,然后在返回管道上发送当前时间。它等效于。垃圾收集器不会恢复底部的底部,并且直到计时器触发器才能回收。考虑效率,请使用它并在不再需要计时器时调用它。
当然,我们也可以使用以下方法,这两种方法都可以:
固定的时间 - 刚刚是一个定时炸弹,将在三秒钟和三秒钟后爆炸。现在让我们看一下这个时期的定期时间!
此代码意味着设置定期时间 - 时间表,然后每秒读取管道的数据,然后输出直至i> 3,然后使用计时器结束,然后停止循环,然后告诉您定时。
如果计时器结束,您仍然必须坚持阅读,并且会出现以下情况!
致命错误:所有goroutines都睡着了 - deadlock!
僵局锁!因此您需要使用休息。
作者:Reganyue