Swift中關于并發的一些干貨
Swift 中關于并發的一切:第一部分 — 當前2017-07-03 11:35程序設計/操作系統原文地址:All about Concurrency in Swift - Part 1: The Present
原文作者:Umberto Raimondi
譯文出自:掘金翻譯計劃
在 Swift 語言的當前版本中,并沒有像其他現代語言如 Go 或 Rust 一樣,包含任何原生的并發功能。
如果你計劃異步執行任務,并且需要處理由此產生的競爭條件時,你唯一的選擇就是使用外部庫,比如 libDispatch,或者 Foundation 和 OS 提供的同步原語。
在本系列教程的第一部分,我們會介紹 Swift 3 提供的功能,涵蓋一切,從基礎鎖、線程和計時器,到語言守護和最近改善的 GCD 和操作隊列。
我們也會介紹一些基礎的并發概念和一些常見的并發模式。
klingon 示例代碼中的關鍵部分
即使 pthread 庫的函數和原語可以在任一個運行 Swift 的平臺上使用,我們也不會在這里討論,因為對于每個平臺,都有更高級的方案。
NSTimer 類也不會在這里介紹,你可以看一看這里,來了解如何在 Swift 3 中使用它。
就像已多次公布的,Swift 4.0 之后的主要版本之一(不一定是 Swift 5)會擴展語言的功能,更好地定義內存模型,并包含了新的原生并發功能,可以不需要借助外部庫來處理并發,實現并行化,定義了一種 Swift 方式來實現并發。
這是本系列下一篇文章討論的內容,我們會討論一些其他語言實現的替代方法和范式實現,和在 Swift 中他們是如何實現的。并且我們會分析一些用當前版本 Swift 完成的開源實現,這些實現中我們可以使用 Actor 范式,Go 的 CSP 通道,軟件事務內存等特性。
第二篇文章將會完全是推測性的,它主要的目的是為你介紹這些主題,以便你以后可以參與到更熱烈討論當中,而這些討論將會定義未來 Swift 版本的并發是怎么處理的。
本文或其他文章的 playground 可以在 或 找到。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
下載地址
Swift中關于并發的一些干貨下載
相關電子資料下載
- 拿下國家級信創認證!中科馭數KPU SWIFT-2200N成為國內首款滿足金融業嚴苛要求的 163
- 中科馭數基于DPU的思威SWIFT系列智能網卡與統信軟件產品完成適配 176
- 如何使用Swift提高代碼質量 126
- 積木易搭Magic Swift Plus為雕刻工藝品精雕復刻提供三維數字化解決方案 274
- 詞法分析-Antlr-1 235
- Kotlin 1.8.0發布,改進性能和Swift的互操作性 1044
- Swift 2023:強調并發、泛型和C++互操作性,開發Swift解析器 300
- 彩色套件創建全彩3D模型MagicSwiftPlus僅千元級 432
- Swift的使用體驗與生態發展之路 981
- 如何加速apply函數600倍的技巧 627