Rust:メモリ解放を別スレッドで行ってコードを高速化する
(abramov.io)複雑なデータ構造体のようなものを Dealloc するときは時間がかかるため、
別スレッドに構造体を移してメモリ解放を処理し、速度(実際にはレイテンシ)を改善するテクニック
→ 100万個のキーを持つ HashMap の場合、約1万倍高速に動作する効果
複雑なデータ構造体のようなものを Dealloc するときは時間がかかるため、
別スレッドに構造体を移してメモリ解放を処理し、速度(実際にはレイテンシ)を改善するテクニック
→ 100万個のキーを持つ HashMap の場合、約1万倍高速に動作する効果
2件のコメント
その投稿で Rust Playground へのリンクが貼られているのを見て - https://play.rust-lang.org/?version=stable&mode=debug&edition=…
GitHub Gist なのかと思って調べてみたら、その通りでした - https://gist.github.com/rust-play/e6036d23879b0d0abda5196dfa8a131e
おそらく Playground で共有ボタンを押すと、GitHub Gist に自動保存する方式になっているようです。
こういうことをするたびにスレッドを作るコードは非効率になり得るので、このヒントを参考にして、いっそ Crate にしてしまった
defer_drophttps://docs.rs/defer-drop/1.0.0/defer_drop/