一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機編程>

Swift中關(guān)于并發(fā)的一些干貨

大?。?/span>0.3 MB 人氣: 2017-09-25 需要積分:1

  Swift 中關(guān)于并發(fā)的一切:第一部分 — 當前2017-07-03 11:35程序設(shè)計/操作系統(tǒng)原文地址:All about Concurrency in Swift - Part 1: The Present

  原文作者:Umberto Raimondi

  譯文出自:掘金翻譯計劃

  在 Swift 語言的當前版本中,并沒有像其他現(xiàn)代語言如 Go 或 Rust 一樣,包含任何原生的并發(fā)功能。

  如果你計劃異步執(zhí)行任務(wù),并且需要處理由此產(chǎn)生的競爭條件時,你唯一的選擇就是使用外部庫,比如 libDispatch,或者 Foundation 和 OS 提供的同步原語。

  在本系列教程的第一部分,我們會介紹 Swift 3 提供的功能,涵蓋一切,從基礎(chǔ)鎖、線程和計時器,到語言守護和最近改善的 GCD 和操作隊列。

  我們也會介紹一些基礎(chǔ)的并發(fā)概念和一些常見的并發(fā)模式。

  Swift中關(guān)于并發(fā)的一些干貨

  klingon 示例代碼中的關(guān)鍵部分

  即使 pthread 庫的函數(shù)和原語可以在任一個運行 Swift 的平臺上使用,我們也不會在這里討論,因為對于每個平臺,都有更高級的方案。

  NSTimer 類也不會在這里介紹,你可以看一看這里,來了解如何在 Swift 3 中使用它。

  就像已多次公布的,Swift 4.0 之后的主要版本之一(不一定是 Swift 5)會擴展語言的功能,更好地定義內(nèi)存模型,并包含了新的原生并發(fā)功能,可以不需要借助外部庫來處理并發(fā),實現(xiàn)并行化,定義了一種 Swift 方式來實現(xiàn)并發(fā)。

  這是本系列下一篇文章討論的內(nèi)容,我們會討論一些其他語言實現(xiàn)的替代方法和范式實現(xiàn),和在 Swift 中他們是如何實現(xiàn)的。并且我們會分析一些用當前版本 Swift 完成的開源實現(xiàn),這些實現(xiàn)中我們可以使用 Actor 范式,Go 的 CSP 通道,軟件事務(wù)內(nèi)存等特性。

  第二篇文章將會完全是推測性的,它主要的目的是為你介紹這些主題,以便你以后可以參與到更熱烈討論當中,而這些討論將會定義未來 Swift 版本的并發(fā)是怎么處理的。

  本文或其他文章的 playground 可以在 或 找到。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?