}
-void OSDService::queue_want_pg_temp(pg_t pgid, vector<int>& want)
+void OSDService::queue_want_pg_temp(pg_t pgid, const vector<int>& want)
{
Mutex::Locker l(pg_temp_lock);
map<pg_t,vector<int> >::iterator p = pg_temp_pending.find(pgid);
void OSDService::_sent_pg_temp()
{
- for (map<pg_t,vector<int> >::iterator p = pg_temp_wanted.begin();
- p != pg_temp_wanted.end();
- ++p)
- pg_temp_pending[p->first] = p->second;
+ pg_temp_pending.insert(make_move_iterator(begin(pg_temp_wanted)),
+ make_move_iterator(end(pg_temp_wanted)));
pg_temp_wanted.clear();
}
map<pg_t, vector<int> > pg_temp_pending;
void _sent_pg_temp();
public:
- void queue_want_pg_temp(pg_t pgid, vector<int>& want);
+ void queue_want_pg_temp(pg_t pgid, const vector<int>& want);
void remove_want_pg_temp(pg_t pgid);
void requeue_pg_temp();
void send_pg_temp();
PREPARING_TO_STOP,
STOPPING };
std::atomic_int state{NOT_STOPPING};
- int get_state() {
+ int get_state() const {
return state;
}
void set_state(int s) {