那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

fish-shell進化為Rust項目

jf_wN0SrCdH ? 來源:Rust語言中文社區(qū) ? 2023-11-29 16:25 ? 次閱讀

wgpu提高多線程中性能

gfx-rs 是一個在 Rust 中實現(xiàn)跨平臺圖形處理的項目。該項目的最新進展是名為 "Arcanization" 的重大重構(gòu),目的是提高在多線程中使用 wgpu 時的性能。Arcanization 重構(gòu)
  • Arcanization 旨在減少 wgpu 內(nèi)部的鎖爭用,提供更好的性能。
  • 該重構(gòu)通過將資源移動到原子引用計數(shù)指針(Arc)后,顯著降低了鎖爭用。
  • 多線程使用 wgpu 的性能顯著提高,例如在測試場景中,幀時間降低了45%。
解決的問題
  • wgpu 內(nèi)部存儲所有資源的數(shù)組導(dǎo)致了鎖爭用和性能問題。
  • Arcanization 將資源存儲方式從直接數(shù)據(jù)更改為 Arc,顯著減少了鎖的持有時間。
原文鏈接https://gfx-rs.github.io/2023/11/24/arcanization.html

Rust中的慣用法:構(gòu)造函數(shù)與轉(zhuǎn)換

這篇文章討論了從C++過渡到Rust的經(jīng)驗,重點關(guān)注構(gòu)造函數(shù)和類型轉(zhuǎn)換, 供C++開發(fā)人員參考:
  1. 初始化:在C++中,構(gòu)造函數(shù)用于初始化實例,在Rust中通過關(guān)聯(lián)函數(shù)(如new)實現(xiàn)。
  2. 強制不變性:構(gòu)造函數(shù)有助于強制類型的不變性。在Rust中,可能失敗的構(gòu)造函數(shù)返回Result
  3. 默認構(gòu)造函數(shù):在C++中,默認構(gòu)造對于許多操作都很重要,在Rust中通過實現(xiàn)Defaulttrait實現(xiàn),通常使用#[derive(Default)]進行簡化。
  4. 復(fù)制構(gòu)造函數(shù):在C++中的復(fù)制構(gòu)造函數(shù)在Rust中通過實現(xiàn)Clonetrait實現(xiàn),以允許顯式復(fù)制。
  5. 可平凡復(fù)制類型:C++中的可平凡復(fù)制類型概念類似于Rust的Copytrait,允許進行字節(jié)對字節(jié)的復(fù)制。
  6. 移動構(gòu)造函數(shù):Rust的移動語義消除了C++中移動構(gòu)造函數(shù)的需求。
  7. 類型轉(zhuǎn)換:C++中的轉(zhuǎn)換構(gòu)造函數(shù)在Rust中通過實現(xiàn)FromIntotrait實現(xiàn),強調(diào)了顯式性,而可能失敗的轉(zhuǎn)換使用TryFromTryIntotrait。
這篇文章強調(diào)了Rust的顯式和注重安全性的編程方式,鼓勵開發(fā)人員在代碼中保持顯式,即使編譯器可以推斷出某些行為。文章提供了實際示例,并比較了C++和Rust的構(gòu)造。 原文鏈接https://geo-ant.github.io/blog/2023/rust-for-cpp-developers-constructors/

ripgrep: 14.0.0版本發(fā)布

ripgrep 是一款面向行的搜索工具,可以遞歸地在當(dāng)前目錄中搜索正則表達式模式。默認情況下,ripgrep 將遵循 gitignore 規(guī)則并自動跳過隱藏文件/目錄和二進制文件。ripgrep 在 Windows、macOS 和 Linux 上都有一流的支持,并為每個版本提供了二進制下載。 目前版本 14.0.0 的 發(fā)布了,包含了一些新功能、性能改進和大量的 bug 修復(fù)。 原文鏈接https://github.com/BurntSushi/ripgrep/releases/tag/14.0.0

ts_quote: 從 Rust 中生成 typescript 代碼

這個 crate 提供了一些準(zhǔn)引用宏,用于從 Rust 內(nèi)部生成 TypeScript 代碼.
這讓在 Rust 中編寫一些 typescript 的代碼生成有了個多的選擇.
下面是一些例子:

	let ts: String = ts_string! { const foo: number = 42; } // 生成的 typescript代碼是: "const foo: number = 42;" let name = "foo"; let value: u32 = 7; let ts: String = ts_string! { const #name: number = #{value + 1}; } // 生成的 typescript代碼是: "const foo: number = 8;"
		github地址https://github.com/spencerkohan/type_reflect/tree/main/ts_quote

fish-shell 進化為 Rust 項目

fish-shell 是一個用戶友好的命令行 Shell. 原本是用C++編寫, 在兩年前開始使用 Rust 進行遷移, 目前, 整體倉庫的 Rust 代碼占比為 53%, 已經(jīng)成功進化為 Rust 項目. github 地址https://github.com/fish-shell/fish-shell -- From 日報小組 BobQ, FBI小白 社區(qū)學(xué)習(xí)交流平臺訂閱:
  • Rustcc論壇: 支持rss
  • 微信公眾號:Rust語言中文社區(qū)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 二進制
    +關(guān)注

    關(guān)注

    2

    文章

    796

    瀏覽量

    41740
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    366

    瀏覽量

    23437
  • Rust
    +關(guān)注

    關(guān)注

    1

    文章

    230

    瀏覽量

    6644

原文標(biāo)題:fish-shell 進化為 Rust 項目

文章出處:【微信號:Rust語言中文社區(qū),微信公眾號:Rust語言中文社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    shell是什么?shell實現(xiàn)原理分析基于MM32 MCU的shell腳本源碼

    在前兩節(jié)中,我們講解了如何在MM32 MCU上使用shell來輔助開發(fā),分別介紹的是通過串口方式和J-Link RTT方式的shell,本次課程我們分析源碼來講解shell實現(xiàn)原理。 軟件資源如下
    發(fā)表于 12-02 15:58 ?2527次閱讀

    如何從shell/命令行打包項目

    我有一個shell腳本(OSX.command shell缺省bash腳本),可以通過做一些類似的操作來清理和構(gòu)建項目,我也希望能夠從shell腳本中打包
    發(fā)表于 10-24 12:24

    只會用Python?教你在樹莓派上開始使用Rust

    結(jié)合起來,并在Raspberry Pi上安裝Rust。設(shè)置Raspberry Pi對于此項目,您將需要:Raspberry PiLED。220-1k歐姆電阻。面包板和接線。使用GPIO 18連接到LED
    發(fā)表于 05-20 08:00

    怎樣去使用Rust進行嵌入式編程呢

    使用Rust進行嵌入式編程Use Rust for embedded development篇首語:Rust的高性能、可靠性和生產(chǎn)力使其適合于嵌入式系統(tǒng)。在過去的幾年里,Rust在程序
    發(fā)表于 12-22 07:20

    如何利用C語言去調(diào)用rust靜態(tài)庫呢

    持續(xù)。rust整個結(jié)構(gòu)還不是特別清晰,特別是庫和wrapper相關(guān)的同個C項目,包含多個rust的靜態(tài)庫,靜態(tài)庫中也會有符號沖突這點應(yīng)該可以把多個rust程序打包一個庫來解決。能否準(zhǔn)確
    發(fā)表于 06-21 10:27

    如何在STM32 (Cortex M3)和GD32(RISC-V)上用Rust開發(fā)

    Preface最近 Mozilla 的 Rust 和 Google 的 Golang 兩門新語言非常受關(guān)注。不過 Golang 除了 Docker 這個標(biāo)志性的項目,在服務(wù)端配合 gRPC 也已經(jīng)
    發(fā)表于 06-21 10:38

    Rust代碼中加載靜態(tài)庫時,出現(xiàn)錯誤 ` rust-lld: error: undefined symbol: malloc `怎么解決?

    “ [i]malloc ”、“ [i]exit ”。我驗證了使用 ` [i]nm ` 命令。 問題是我打算使用 ffi 在 rust 中使用這個靜態(tài)庫。當(dāng)我嘗試在我的 Rust 代碼中加載靜態(tài)庫
    發(fā)表于 06-09 08:44

    Centrifugal fish autofeeder

    Centrifugal fish autofeeder This easy as well as cheap but effective device is mainly intended for your ease to leave your fish autofed
    發(fā)表于 03-28 22:31 ?628次閱讀
    Centrifugal <b class='flag-5'>fish</b> autofeeder

    fish-shell友好交互式shell

    ./oschina_soft/fish-shell.zip
    發(fā)表于 05-26 15:27 ?1次下載
    <b class='flag-5'>fish-shell</b>友好交互式<b class='flag-5'>shell</b>

    Rust Web Development》提供了完整的 Rust Web 開發(fā)指南

    個 web 項目(并將其帶入生產(chǎn)),并提供了框架無關(guān)的深入探討。 "Rust Web Development"(Manning出版社)一書已經(jīng)發(fā)布并可以購買。各位!在經(jīng)過了兩年多的編輯和重新編輯后
    的頭像 發(fā)表于 12-09 11:43 ?2194次閱讀

    Google在Chromium項目中支持使用Rust

    Rust 1.66.1 發(fā)布 Rust 1.66.1 修復(fù)了 Cargo 在使用 SSH 克隆依賴項或注冊表索引時不驗證 SSH 主機密鑰的問題。此安全漏洞被跟蹤為?CVE-2022-46176[1
    的頭像 發(fā)表于 01-16 10:52 ?1707次閱讀

    Rust的內(nèi)部工作原理

    Rust到匯編:了解 Rust 的內(nèi)部工作原理 非常好的Rust系列文章,通過生成的匯編代碼,讓你了解很多Rust內(nèi)部的工作機制。例如文章有 Rus
    的頭像 發(fā)表于 06-14 10:34 ?828次閱讀
    <b class='flag-5'>Rust</b>的內(nèi)部工作原理

    如何在Rust項目中使用InfluxDB 2.x

    了更好的性能和更好的用戶體驗。Rust語言提供了InfluxDB 2.x的官方客戶端庫,可以方便地在Rust項目中使用InfluxDB 2.x。 本教程將介紹如何在Rust
    的頭像 發(fā)表于 09-19 16:33 ?707次閱讀

    Fish Shell采用Rust重寫會導(dǎo)致性能下降

    fish 是適用于 Linux、macOS 的命令行 Shell,其名字取于 "the friendly interactive shell" 的簡稱,最大特點就是方便易用、功能強大、智能并且用戶友好。很多其他
    的頭像 發(fā)表于 11-28 11:23 ?499次閱讀
    <b class='flag-5'>Fish</b> <b class='flag-5'>Shell</b>采用<b class='flag-5'>Rust</b>重寫會導(dǎo)致性能下降

    一次Rust重寫基礎(chǔ)軟件的實踐

    受到2022年“谷歌使用Rust重寫Android系統(tǒng)且所有Rust代碼的內(nèi)存安全漏洞為零” [1] 的啟發(fā),最近筆者懷著濃厚的興趣也順應(yīng)Rust 的潮流,嘗試著將一款C語言開發(fā)的基礎(chǔ)軟件轉(zhuǎn)
    的頭像 發(fā)表于 01-25 11:21 ?690次閱讀
    网上老虎机游戏| 888娱乐城| 24山认龙立向| 新全讯网768866| 百家乐真人游戏网| 百家乐官网棋牌辅助| 太阳城娱乐城官网| 大中华百家乐的玩法技巧和规则| 澳门百家乐官网的故事| 博彩e族天上人间| 娱乐城送钱| 大发888为什么打不开| 百家乐八卦九| 澳门百家乐看路博客| 百家乐官网园百乐彩| 百家乐官网出庄几率| 大发888下载并安装| 百家乐技巧头头娱乐| 百家乐官网的路图片| 百家乐官网试玩账户| bet365充值| 试玩百家乐帐| 艮山坤向 24山| 老虎机遥控器| 大发888游戏平台 新葡京| 百家乐追号软件| 百家乐vshow| 百家乐赌博策略大全| 属羊的和属猪的做生意| 百家乐官网稳赢投资法| 澳门百家乐官网怎么才能赢钱| 百家乐官网体育宝贝| 军事| 新葡京| 网上现金棋牌| 百家乐官网官方网站| 免邮百家乐官网布桌| 百家乐官网破解软件真的有用吗| 衡南县| 百家乐官网大路小路| 百家乐官网怎么出千|