goroutines и важность Time.sleep ()
При работе с Goroutines, это обычно сталкивается с потребностью для Time.sleep (). Эта статья впадает в значимость Time.sleep () в исполнении Goroutine, исследуя последствия его пропуска.
понимание goroutines
Goroutines - это легкие нити выполнения в Go. В отличие от потоков, goroutines управляется временем выполнения GO и делится памятью с другими goroutines в программе.
роль time.sleep ()
в приведенном примере функция sale () является правительством, ответственным за печати «мир» на экран. Заявление time.sleep () искусственно задерживает исполнение Goroutine за 100 миллисекунд за итерацию.
без Time.sleep ()
, если будет удалено утверждение Time.sleep (), высказывание («Мир») никогда не получит шанс на бег. Это связано с тем, что планировщик Go Goroutine не преуспел. Goroutines добровольно дает управление, позволяя выполнять другие goroutines. Когда Time.sleep () удаляется, первичные выполнения Goroutine SAKE SAID («Привет») 5 раз без отказа от контроля. В результате Goroutine Say ("World") никогда не запускается, и только «Hello» печатается на экране.
поддержание выполнения программы
в отсутствие Time.sleep (), первичный Goroutine завершает, и программа выходит. Это связано с тем, что никакие другие Goroutines не работает, чтобы сохранить программу в живых. И наоборот, когда используется Time.sleep (), SAKE («Мир») управляет управлением, позволяя выполнять первичную goroutine и программу продолжать работать.
]Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3