Using Closed Channel and WaitGroup for Shutdown
Merge branch 'develop'

* develop:
  Using Closed Channel and WaitGroup for Shutdown