TL;DR 基本的には std::thread::spawn よりもRust 1.63で安定化される std::thread::scope を使う方が良いと思います。 threadの寿命はstatic #[derive(Debug, Clone)] struct SharedData { x: i32, } impl SharedData { fn new(x: i32) -> Self { Self { x } } } fn main() { use std::thread; let data = SharedData::…
Announcing the Keyword Generics Initiative | Inside Rust Blog
We (Oli, Niko, and Yosh) are excited to announce the start of the Keyword Generics Initiative, a new initiative 1 under the purview of the language team. We’re officially just a few weeks old now, and in this post we want to briefly share why we’ve started this initiative, and share some insight …
ISUCON12予選参加記 Rustで予選突破した
2022年7月23日(土) に開催された ISUCON 12 に Rust で参加して20位で予選突破しました。 チーム チームO omu: https://omuric.github.io/posts/isucon12-qualify/ dice801: https://zenn.dev/dice801/articles/760f8fc6af5a08 daiju (自分) 事前準備 基本的には前年までに用意したツールを活用する cargo-make で3台の …
[Rust] 簡単なFFI実験(Rust ~ C, Python) – Qiita
RustでFFI関連の練習をした。 すべてWindows MSVC環境。 FFI = Foreign Function Interface(他言語の関数を使うためのインターフェイス)。 異なる言語を組み合わせて使うための技術的仕様。 簡単に言えば「C言語の仕様に合わせる」ことで実現している。 要点 Rust製ライブラリをC言語で使う Rust製ライブラリをPython…
DNS-over-HTTP/3 in Android
The latest news and insights from Google on security and safety on the Internet
Google、Androidに「DNS over HTTP/3」対応を追加 ~実装はRust言語/既存の「DNS over TLS」よりも高いパフォーマンス
Google、Androidに「DNS over HTTP/3」対応を追加 ~実装はRust言語/既存の「DNS over TLS」よりも高いパフォーマンス
Extending SQLite with Rust to support Excel files as virtual tables
This article explains how SQLite can be extended with Rust. In particular, it will outline SQLite’s mechanism called virtual tables and showcase how we can use it from Rust programming language. In the end, we will have a working extension that can be dynamically loaded and used from SQLite. This…
個人開発したサービスのバックエンドを Python から Rust に書き換えてみた
はじめに 過去の記事『淡路島発着の高速バス検索サービス「GO TO AWAJI」をリリースした話』で Python を用いて個人開発サービスのバックエンドを実装したことを紹介しました。 勉強のためにこのサービスのバックエンドの一部を Rust で書き換えたので、本記事で紹介させて頂きます。 クローラーサービス 今回 Python か…
C言語へのFFIを含むRustをWASM化するのは難しすぎる
PlantUMLをwasm化するためにGraphvizへの依存をどうしたものか考えていました。すべてRustで書き直せればそれがいちばん手堅いのですが、Graphvizのソースコードは中々に大きく、それをRustで書き直すのは現実的ではありません。そこで考えたのが、RustからFFIでGrapvizのC++コードを呼ぶようにして、それをwasm化すれば…
「Rust」言語のインストーラー「Rustup」が「Visual Studio 2022」の自動導入に対応/Windows/Mac/Linux、どのプラットフォームでも共通の手順でお手軽セットアップ
「Rust」言語のインストーラー「Rustup」が「Visual Studio 2022」の自動導入に対応/Windows/Mac/Linux、どのプラットフォームでも共通の手順でお手軽セットアップ