This commit is contained in:
chai2010
2016-01-02 21:17:21 +08:00
parent 8772a9c000
commit ba03c527c0
17 changed files with 63 additions and 29 deletions

View File

@@ -41,9 +41,11 @@ func fib(x int) int {
```
動畵顯示了幾秒之後fib(45)的調用成功地返迴,併且打印結果:
```
Fibonacci(45) = 1134903170
```
然後主函數返迴。當主函數返迴時所有的goroutine都會直接打斷程序退出。除了從主函數退出或者直接退出程序之外沒有其它的編程方法能夠讓一個goroutine來打斷另一個的執行但是我們之後可以看到可以通過goroutine之間的通信來讓一個goroutine請求請求其它的goroutine併讓其自己結束執行。
註意這里的兩個獨立的單元是如何進行組合的spinning和菲波那契的計算。每一個都是寫在獨立的函數中但是每一個函數都會併發地執行。