DOMINE課程與GO(Golang)的Mulethreading編程

”“”

用GO(Golang)

統治多線程編程

在Google的Go Language中,以實用而有趣的示例了解多線程,競爭和並行編程

國際投資銀行12樓的會議上的氣氛是黑暗的。該公司的開發人員聚集在一起討論關鍵中央應用程序失敗後繼續前進的最佳方法,並導致整個系統中斷。 “伙計們,我們在這裡有一個嚴重的問題。我發現中斷是由我們的代碼中的種族條件引起的,並在昨晚引發並觸發了,”高級開發商邁克爾·湯普森(Michael Thompson)說。房間是沉默的。天花板窗外的汽車在城市繁華的交通中緩慢移動。高級開發人員立即了解情況的嚴重性,意識到他們現在將不懈地努力糾正問題並解決數據庫中的混亂。經驗不足的開發人員了解,種族狀況是嚴重的,但不完全理解其原因,因此他們保持沉默。最終,送貨經理戴維·安德森(David Anderson)打破了沉默,他說:“該應用程序已經運作完美了幾個月,我們沒有發布任何最近的代碼發布。該軟件如何突然破裂?!”每個人都搖了搖頭,回到桌子上,讓大衛獨自一人在房間裡困惑。他將手機從口袋裡取出,研究“種族狀況”。聽起來很熟悉?您有多少次聽到另一位開發人員討論線程的使用和競爭編程來解決特定問題,但是出於恐懼,您是否避免參加對話?這是高級開發人員永遠不會透露的秘密……多線程比常規編程更具挑戰性。開發人員被競爭編程嚇倒了,因為他們認為這是一個為經驗豐富的開發人員保留的高級主題。這與事實相距甚遠。我們的思想習慣於處理日常生活中沒有問題的競爭,但是我們以某種方式難以將其轉化為我們的代碼。原因之一是我們缺乏對可用於管理競爭的概念和工具的熟悉。本課程旨在幫助您了解如何使用多線程工具和概念來處理並行編程。它旨在盡可能實用。我們從關於並行性的一些小理論開始,然後陷入操作系統如何管理各種過程和線程。後來,我們探索了使用多線程解決示例問題的各種工具。在本課程中,我們使用Google的Go編程語言和gourthines,但是這裡學到的概念可以應用於大多數編程語言。本課程中使用的所有代碼均可在github中找到,在用戶名/項目:fiTylyName/mulethreadingingo上。

您將學到什麼

  • 找出如何創建響應迅速和高性能軟件。
  • 請參閱如何使用多線程來建模某些類型的問題和仿真。
  • 與Golang開發競爭高度且平行的golang節目。
  • 了解並行計算的優點,局限性和屬性。
  • 通過更高級的多線程主題提高您的GO編程技能。
  • 了解葫蘆,靜音,閱讀塊,等待組,頻道,條件變量等等。
Scroll to Top