Feng-Chi's Notes
  • 首頁
  • 關於
  • 工作經歷
  • 技能
  • 最新文章
  • 文章
  • Dark Theme
    Light Theme Dark Theme System Theme
  • 文章
  • 後端
    • 用 os.Root 寫一個安全的 Go 檔案儲存
    • url.Redacted() 遮不住的 token
    • Goroutine 和 Channel 講解
    • Go 語言 sync 包的應用詳解
  • 前端
    • Vite 部署後舊分頁點不動
    • JavaScript 筆記
    • 關於 Web 跨域相關紀錄
  • 維運與雲原生
    • Nginx 相關設定
    • RHEL(CentOS) 離線安裝套件
    • 編譯原始碼安裝 Nginx 在 RHEL / CentOS 環境下
    • 本站建置過程紀錄
  • AI
    • 用 Claude Code hook 擋危險指令
  • 資安
    • 檢查 ?redirect= 防 open redirect
  • 軟體工程
    • Clean Code 系列 - PHP
    • Clean Code 系列 - Javascript
Hero Image
Goroutine 和 Channel 講解

前言 Go 語言中並發程序可以用兩種方式來實現。 一種是 goroutine 和 channel,其支持 “交談循序程式”(communicating sequential processes)或被簡稱為 CSP。 CSP 是一個現代的並發程式模型,在這種程式模型中值會在不同的運行實例(goroutine)中傳遞,儘管大多數情況下被限制在單一實例中。 另一種是傳統的並發模型,多線程共享內存(基於共享變量的並發) , 會在後續單獨闡述。

  • go
  • concurrency
Wednesday, July 8, 2020 | 3 分鐘 閱讀
Hero Image
Go 語言 sync 包的應用詳解

並發程式中的同步也就是我們通常說的鎖的主要作用是保證多個線程或者 goroutine 在訪問同一片內存時不會出現混亂的問題。 Go 語言的 sync 包提供了常見的並發程式同步 。 今天的文章裡讓我們回到應用層 , 聚焦 sync 包裡這些同步的應用場景 , 同時也會介紹 sync 包中的 Pool 和 Map 的應用場景和使用方法。

  • go
  • concurrency
Tuesday, July 7, 2020 | 4 分鐘 閱讀
Hero Image
本站建置過程紀錄

紀錄建置過程 註:本文記錄的是 2020 年的舊架構(hugo-theme-even + peaceiris/actions-gh-pages),本站目前已改用 toha 主題與 GitHub Pages 官方部署流程。

  • hugo
  • github-pages
Tuesday, July 7, 2020 | 1 分鐘 閱讀
  • ««
  • «
  • 1
  • 2
  • »
  • »»
導覽列
  • 關於
  • 工作經歷
  • 技能
  • 最新文章
聯絡方式:
  • holmes.lin@gmail.com
  • Feng-Chi

免責聲明: 內容採 CC BY-NC-ND 4.0 授權。


Toha Theme Logo Toha
© 2019–2026 Feng-Chi
Powered by Hugo Logo