99

std::futureが終了したかどうかを確認することはできますか? 私が知る限り、それを行う唯一の方法はwait_for、ゼロ期間で呼び出し、ステータスがそうであるかどうかを確認することreadyですが、より良い方法はありますか?

4

3 に答える 3

17

std::futureの作業には is_ready メンバー関数があります。それまでの間、VC 実装には _Is_ready() メンバーがあります。

于 2014-05-04T23:56:56.707 に答える
11

私の最初の賭けはwait_for、期間 0 で呼び出しfuture_status::ready、 、future_status::deferredまたはのいずれかになる結果コードを確認することですfuture_status::timeout

valid()その状態が準備完了かどうかに関係なく、共有状態を参照するtrue場合は戻ります。cppreferenceを参照してください。*this

于 2012-06-05T03:07:11.583 に答える