temporarily removed size control

This commit is contained in:
joaquintides
2023-12-12 16:34:27 +01:00
parent 64614f1670
commit c346a513f0

View File

@ -1592,8 +1592,9 @@ private:
if(unprotected_visit( if(unprotected_visit(
access_mode,k,pos0,hash,std::forward<F>(f)))return 0; access_mode,k,pos0,hash,std::forward<F>(f)))return 0;
reserve_size rsize(*this); //reserve_size rsize(*this);
if(BOOST_LIKELY(rsize.succeeded())){ //if(BOOST_LIKELY(rsize.succeeded())){
if(true){
for(prober pb(pos0);;pb.next(this->arrays.groups_size_mask)){ for(prober pb(pos0);;pb.next(this->arrays.groups_size_mask)){
auto pos=pb.get(); auto pos=pb.get();
auto pg=this->arrays.groups()+pos; auto pg=this->arrays.groups()+pos;
@ -1615,7 +1616,7 @@ private:
auto p=this->arrays.elements()+pos*N+n; auto p=this->arrays.elements()+pos*N+n;
this->construct_element(p,std::forward<Args>(args)...); this->construct_element(p,std::forward<Args>(args)...);
pg->set(n,hash); pg->set(n,hash);
rsize.commit(); //rsize.commit();
return 1; return 1;
} }
pg->mark_overflow(hash); pg->mark_overflow(hash);
@ -1969,8 +1970,8 @@ private:
e.mco=mco; e.mco=mco;
e.epoch=v.epoch.load(); e.epoch=v.epoch.load();
++v.wpos; ++v.wpos;
--this->size_ctrl.ml; //--this->size_ctrl.ml;
--this->size_ctrl.size; //--this->size_ctrl.size;
/* if(wpos-v.rpos>=garbage_vector::min_for_garbage_collection){ /* if(wpos-v.rpos>=garbage_vector::min_for_garbage_collection){
v.epoch=++current_epoch; v.epoch=++current_epoch;
garbage_collect(); garbage_collect();
@ -2013,7 +2014,7 @@ private:
e.epoch=retired_element::available_; e.epoch=retired_element::available_;
++rpos; ++rpos;
} }
this->size_ctrl.ml+=(rpos-v.rpos)-num_mcos; //this->size_ctrl.ml+=(rpos-v.rpos)-num_mcos;
v.rpos=rpos; v.rpos=rpos;
v.reading=false; v.reading=false;
} }