Go的工作池
緩沖信道的重要應用之一就是實現(xiàn)工作池。
一般而言,工作池就是一組等待任務分配的線程。一旦完成了所分配的任務,這些線程可繼續(xù)等待任務的分配。
我們會使用緩沖信道來實現(xiàn)工作池。我們工作池的任務是計算所輸入數(shù)字的每一位的和。例如,如果輸入 234,結果會是 9(即 2 + 3 + 4)。向工作池輸入的是一列偽隨機數(shù)。
我們工作池的核心功能如下:?
- 創(chuàng)建一個 Go 協(xié)程池,監(jiān)聽一個等待作業(yè)分配的輸入型緩沖信道。?
- 將作業(yè)添加到該輸入型緩沖信道中。?
- 作業(yè)完成后,再將結果寫入一個輸出型緩沖信道。?
- 從輸出型緩沖信道讀取并打印結果。
我們會逐步編寫這個程序,讓代碼易于理解。
第一步就是創(chuàng)建一個結構體,表示作業(yè)和結果。
總結
- 上一篇: 若点(1-2m,m-4)在第一象限内,则
- 下一篇: Bootstrap的栅格布局