LoginSignup
1
0

More than 3 years have passed since last update.

marl C++11 task scheduler のメモ

Posted at

A hybrid thread / fiber task scheduler written in C++ 11
https://github.com/google/marl

fiber にも対応している task scheduler です.
thread/task scheduler ですといくつか他に実装はありますが, fiber 対応で Android なども対応で依存ライブラリ無しというのは marl くらいな気もしますのでよさそうな感じはあります.

Ticket という機能も実装されています.

SwiftShader で最近(?)使われているようで気になりました.
https://github.com/google/swiftshader

特にグラフィックスアプリ関連で使えそうですね.

defer 以外は, 記述は std::thread に近い感じで使えますので, 自前アプリに組み込みは容易かと思います.

defer

リソースの解放など, スコープが抜けたあとに処理を実行するのに defer というマクロが用意されています.

変数が delete されるときに呼ばれるのではないので, ライフサイクルに注意ください.

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0