- Inner goroutine can send event to outer goroutine by channel
- Ex. Pass value to inner routine function
- Declare a variable in inner goroutine function, use outer variable will be wrong because that variable value will be changed in for loop
- Ex. Send error to errorChannel from inner goroutine。may goroutine leak.
- Solution is to use a buffered channel to prevent block.
- Another solution is to use abother goroutine to get error.
- Need sync.WaitGroup to make sure items to process all done. Wait done in a goroutine when main channel is used to receive msg from goroutine
- Add must be callled before goroutine start, otherwise cant make sure add happens before done
- Done same as Add(-1)
Go - parallel iteration
訂閱:
張貼留言 (Atom)
別名演算法 Alias Method
題目 每個伺服器支援不同的 TPM (transaction per minute) 當 request 來的時候, 系統需要馬上根據 TPM 的能力隨機找到一個適合的 server. 雖然稱為 "隨機", 但還是需要有 TPM 作為權重. 解法 別名演算法...
-
spring.jpa.open-in-view spring boot 的 property, spring.jpa.open-in-view 預設是開啟的 開啟的話, OpenSessionInViewInterceptor 就會介入 收到 web request 的時候...
-
Introduction One day, Cassandra stop listening for thrift client until restart it manually. After checking Cassandra log, found it enco...
-
第一次錄影片分享技術議題. Source code: https://github.com/axxdeveloper/study-practice/tree/gpb 主要其實就是之後可以用 Any.pack( gpbEntity ).toByteArray 傳送出去. 接收端也...
沒有留言:
張貼留言