パイプライン利用時のrangeについて

最近業務などgo言語を利用することがあって、一部処理にスレッドアンセーフな処理があり、パイプラインを使った並列化で実装しました。
チャンネルでは、無限ループで閉じられたかどうかというif文を利用して、閉じられた場合には、ループを抜けるというようなロジックを記載することがありますが、range で実装出来ることを知ったので自分へのメモとして記載しておきます。

```golang
package main

import "fmt"                                                                                                                                                                                     
                                                                                                                                                                                                
func main() {
    a := make(chan int)
    b := make(chan int)                                                                                                                                                                                                                                                                                                                                                                  
    go func () {
        for x := 0; x < 100; x++ {                                                                                                                                                                                
            a <- x                                                                                                                                                             
        }                                                                                                                                                                                                
        close(a)                                                                                                                                                                           
    }()                                                                                                                                                                                                                                                                                                  
    go func () {                                                                                                                                                                                              
        for x := range a {
            b <-  x * x                                                                                                                                                                         
        }                                                                                                                                                                                                 
        close(b)                                                                                                                                                                    
    }()                                                                                                                                                                                                                                                                                                                                                                                              
    for x := range b {                                                                                                                                                                  
        fmt.Println(x)                                                                                                                                                                            
    }                                                                                                                                                                                                                                                                                                                                                                                           
} 
```