中断可能なダイクストラ最短経路アルゴリズム

【graph】 interest in resumable dijkstra?


Boost.Graphに、中断可能なダイクストラ最短経路アルゴリズムが提案されています。
提案されている実装としては、最短経路アルゴリズムに渡すevent visitorに、do_interrupt()メンバ関数を追加してその関数がtrueを返したら内部のループをbreakするというものです。


他の案としては、Boost 1.51.0から入る予定のBoost.Contextや、N3328 Resumable Functionsで提案されているawait (C#にあるアレ)があったらそれ使いたい、という話がでてます。


Boost.Contextで中断可能なアルゴリズムは、前にやりました:
Boost.Context アルゴリズムを中断可能にする