专栏首页Rust语言学习交流【Rust日报】2019-09-18 async-std v0.99.6 版本更新

【Rust日报】2019-09-18 async-std v0.99.6 版本更新

async-std v0.99.6 版本更新

这个版本增加了几个新的组合器、work-stealing 算法执行器,以及使用 IntoStreamFromStreamcollect 流的能力。

此外,async-attributes 1.0 已经发布,它增加了对 async fn main, #[test] async fn#[bench] async fn 的支持。

使用示例
let a = stream::once(1u8);
let b = stream::once(2u8);
let c = stream::once(3u8);

let s = stream::join!(a, b, c);

assert_eq!(s.collect().await, vec![1u8, 2u8, 3u8]));

详情查看

Reddit 讨论:https://www.reddit.com/r/rust/comments/d6eb4g/asyncstd_v0996_released/

使用 rust 去编译 WebAssembly

@_lrlna@twitter 在 RustConf 2019 上做了个演讲,通过使用 rust 编译 webassembly,并提升性能。

内容简要如下:

你应该了解到在浏览器中可运行 WebAssembly,但是这看起来像 IRL 吗?为了寻求在浏览器中运行 WASM 所带来的性能优势,Compass(用于 MongoDB 的 GUI)迈出了一大步,在 Rust 中重写了应用程序的一部分——一个负责文档分析的模式解析器。事实证明:将应用程序的某些部分使用 Rust 重写会使它更快。

在这次演讲中,将介绍如何将部分代码从 JavaScript 转换为 Rust,通过绑定 Electron,将 WASM 添加到现有的 React 应用程序中,并将其部署到生产环境中。因为 Compass 仍然通过 Nodejs 与 MongoDB 通信。此外还介绍了如何使用 Rust 在不丢失数据完整性的情况下提高性能。演讲过程中还包含了我们遇到了什么难题以及如何克服的。

演讲视频地址:https://www.youtube.com/watch?v=lLzFJenzBng&feature=youtu.be

Xcode 的 rust 工具链 - rust-bitcode

在Rust的标准版本中,ARM64 iOS目标中的位代码通常与 Xcode 不兼容,因为它们使用不同版本的LLVM。这是一个众所周知的问题,目前还没有明确的长期解决方案。

这个存储库包含用于构建和安装自定义 Rust nightly 的脚本,其中 Rust 编译器版本的 LLVM 与 Xcode 匹配。使用此工具链构建的软件可以包含在支持位码的应用程序中,这些应用程序将安装在真正的 iOS 设备上。

了解更多请看:https://github.com/getditto/rust-bitcode

Rust 在物联网(IoT)的应用

演讲介绍了编写运行微控制器的 Rust 技巧,并调查已经现有生态系统中可用的优秀嵌入式Rust项目。

如果您的物联网项目在 ARM 或 MSP430 上,那么它已经在 Rust 编译器中获得了本地支持,AVR和RISC-V也有可用的编译器分支。但是架构支持只是第一个挑战:如果您习惯于为运行操作系统的主机编写Rust,那么在嵌入式世界中必须自己完成所有工作的范式转换可能会很不协调。

更多请原文视频地址:https://morioh.com/p/73aac331a451


From 日报小组 @Jancd

日报订阅地址:

独立日报订阅地址:

  • Telgram Channel
  • 阿里云语雀订阅
  • Steemit
  • GitHub

社区学习交流平台订阅:

  • Rust.cc论坛: 支持rss
  • Rust Force: 支持rss
  • 微信公众号:Rust语言学习交流

本文分享自微信公众号 - Rust语言学习交流(rust-china)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 人工智能IDE编程插件,提升编程效率的好帮手

    平时写代码的时候多少会依赖编辑器里面的代码补全,敲几个字母就能补全一整个词。可是这么多年过去了,为什么代码补全还是像最开始那样,只能限定于一个词,而且毫无意义地...

    JAVA葵花宝典
  • 人工智能IDE编程插件,提升编程效率的好帮手

    平时写代码的时候多少会依赖编辑器里面的代码补全,敲几个字母就能补全一整个词。可是这么多年过去了,为什么代码补全还是像最开始那样,只能限定于一个词,而且毫无意义地...

    用户5224393
  • 干货 | 关于SwiftUI,看这一篇就够了

    梁启健,携程金融支付中心开发工程师,主要负责支付iOS端的开发与优化工作,喜欢研究大前端和跨平台技术。

    用户1292807
  • 人工智能IDE编程插件,提升编程效率的好帮手

    平时写代码的时候多少会依赖编辑器里面的代码补全,敲几个字母就能补全一整个词。可是这么多年过去了,为什么代码补全还是像最开始那样,只能限定于一个词,而且毫无意义地...

    Java团长
  • iOS开发:用XIB拖控件关联时报错:“Could not insert new outlet connection”解决方法

    在iOS开发过程中,尤其是iOS开发初期,会遇到各种各样的错误,有些错误是开发者的不熟悉或者疏忽大意造成的,还有些是无厘头的错误,可以通过重启Xcode或者重启...

    三掌柜
  • appium ios真机自动化环境搭建&运行(送源码)

    首先是熟悉Mac的使用习惯:命令行是Linux风格,界面则类似于Windows风格。

    测试开发社区
  • [NewLife.XCode]分表分库(百亿级大数据存储)

    NewLife.XCode是一个有15年历史的开源数据中间件,支持netcore/net45/net40,由新生命团队(2002~2019)开发完成并维护至今,...

    大石头
  • Hello Flutter,船长初体验

    前几天 Google 发布了 flutter.cn 以及 release 了 Flutter 1.9 ,今天船长没忍住,尝试了下 Flutter。

    程序亦非猿
  • 初识LLVM&Clang-开发Xcode插件

    Xcode现在使用的编译器就是LLVM。LLVM比以前使用的GCC编译器速度快好几倍。并且LLVM可以编译 Kotlin,Ruby,Python,Haskell...

    用户6094182

扫码关注云+社区

领取腾讯云代金券