Categorygithub.com/momotaro98/go-codes-for-learningConcurrency-in-Gochapter5_large_scale_Concurrencysection6_fix_idle_goroutine
# README
5.6 不健全なゴルーチンを直す
デーモンのような長時間稼働し続けるプロセスは、ゴルーチンが外部の助けなしに回復できない悪い状態に留まってしまうことがあり得るということです。
長時間稼働しているプロセスにおいては、ゴルーチンが健全な状態にあるようにして、不健全な状態になったら再起動する仕組みを作るのは有益なことです。このゴルーチンを再起動する流れを「回復」と呼びます。
ゴルーチンを直すために、ハートビートパターンを使って監視しているゴルーチンの生存を確認します。
ここではゴルーチンの健全性を監視するロジックを管理人(Steward)とよび、管理人が監視するゴルーチンを中庭(Ward)と呼びます。管理人は中庭にいるゴルーチンが不健全になったら再起動する責任も負っています。