知識冒險者

concurrency

此標籤下有 12 條筆記。

  • 2026年9月17日

    for-select 裡的 time.After 每圈重置

    • go
    • concurrency
    • gotcha
  • 2026年9月17日

    select 分三階段:求值全部、等待全部、只執行一個

    • go
    • concurrency
  • 2026年9月17日

    select 是 channel 版的 switch

    • go
    • concurrency
  • 2026年9月17日

    select 用 default 做非阻塞,用 time.After 做逾時

    • go
    • concurrency
  • 2026年9月17日

    select 的 case 後面不是條件而是一個 channel

    • go
    • concurrency
    • gotcha
  • 2026年9月17日

    select 等不到條件時會 deadlock 或 goroutine leak

    • go
    • concurrency
    • gotcha
  • 2026年9月17日

    select 阻塞的是呼叫它的 goroutine,不是整個程式

    • go
    • concurrency
  • 2026年9月17日

    把 channel 設成 nil 可以停用 select 的某個 case

    • go
    • concurrency
  • 2026年8月30日

    Channel 是 goroutine 之間的通訊管道

    • go
    • concurrency
  • 2026年8月30日

    Goroutine 是用 go 關鍵字啟動的輕量任務

    • go
    • concurrency
  • 2026年8月30日

    無緩衝 channel 的收送會互相等待

    • go
    • concurrency
  • 2026年8月30日

    用 time.Sleep 等 goroutine 只是 demo 寫法

    • go
    • concurrency

Created with Quartz v5.0.0 © 2026