真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Rust是什么意思

小編給大家分享一下Rust是什么意思,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、小程序設計、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了武夷山免費建站歡迎大家使用!

Rust 是什么?

Rust 是一種系統(tǒng)編程語言,它運行速度驚人,并且可以避免幾乎所有的崩潰、內(nèi)存區(qū)塊錯誤  以及數(shù)據(jù)競爭。你也許會質疑為什么我們還需要又一種這樣的語言,因為已經(jīng)有很多同類的語言了。這篇文章將會告訴你為什么。

安全性 vs. 控制權

Rust是什么意思

你也許見過上面的圖譜。一邊是  C/C++,對運行的硬件擁有更多的控制權,因此它可以讓開發(fā)者通過對所生成的機器代碼進行更精細的控制來優(yōu)化性能。然而這不是很安全,這很容易造成內(nèi)存區(qū)塊錯誤以及像  心血漏洞 這樣的安全漏洞。

另一邊是像 Python、Ruby 和 JavaScript  這種沒有給予開發(fā)者多少控制權但是可以創(chuàng)建出更安全的代碼的語言。雖然這些代碼可以生成相當安全并且可控的異常,但是它們不會造成內(nèi)存區(qū)塊錯誤。

在圖譜中間的區(qū)域是 Java 和一些其它混合了這些特性的語言。它們提供對運行的硬件部分控制權,并且嘗試盡量減少漏洞的出現(xiàn)。

Rust 有點不太一樣,它并沒有出現(xiàn)在這個圖譜上。它同時提供給開發(fā)者安全性和控制權。

Rust 的特性

Rust 是一種像 C/C++  一樣的系統(tǒng)編程語言,除此之外它還給予開發(fā)者對內(nèi)存分配細粒度的控制。它不需要垃圾回收器。它的運行環(huán)境runtime很小,運行速度接近于在裸機上的運行。它為開發(fā)者提供了代碼性能更大的保證。此外,任何了解  C/C++ 的人都能讀懂以及編寫 Rust 的代碼。

Rust 的運行速度非??欤驗樗且环N編譯語言。它使用 LLVM 作為編譯器的后端,并且還可以利用一大堆優(yōu)化。在許多領域,它的性能都要高于  C/C++。它像 JavaScript、Ruby 和 Python 一樣,與生俱來就是安全的,這意味著它們不會造成內(nèi)存區(qū)塊錯誤、野指針dangling  pointers或者空指針null pointers。

另外一個很重要的特性就是消除數(shù)據(jù)競爭。如今,大多數(shù)計算機都具有多個核心,許多線程并發(fā)運行。然而,開發(fā)者很難編寫好的并行代碼,因此這個特性除去了他們的后顧之憂。Rust  使用兩個關鍵概念來消除數(shù)據(jù)競爭:

  • 所有權Ownership。每一個變量都被移動到一個新的位置,并防止通過先前的位置來引用它。每一個數(shù)據(jù)塊只有一個所有者。

  • 借用Borrowing。被擁有的值可以借用,以允許在一段時間內(nèi)使用。

在 Fedora 24 和 25 上使用 Rust

若要開始使用,只需安裝軟件包:

sudo dnf install rust

示例代碼 helloworld.rs:

fn main() {     println!("Hello, Rust is running on Fedora 25 Alpha!"); }

編譯并執(zhí)行:

rustc helloworld.rs ./helloworld

在 Fedora 上可以執(zhí)行以下命令來安裝***的測試版本:

sudo dnf --enablerepo=updates-testing --refresh --best install rust

以上是“Rust是什么意思”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


文章題目:Rust是什么意思
網(wǎng)站URL:http://weahome.cn/article/giespc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部