当前位置: 首页 > news >正文

网站如何备案 流程深圳横岗做网站的

网站如何备案 流程,深圳横岗做网站的,吉林省水土保持生态建设网站,在线手机网站预览std::stack容器的接口包括 empty(), size(), top(), push(), pop()等。 问题 其原接口在多线程的情况下#xff0c;会持续很多问题。 例如#xff0c;在std::stack容器的接口中#xff0c;在多线程下应用时#xff0c;empty()和size()的结果是不可信的。因为尽管在某线程…std::stack容器的接口包括 empty(), size(), top(), push(), pop()等。 问题 其原接口在多线程的情况下会持续很多问题。 例如在std::stack容器的接口中在多线程下应用时empty()和size()的结果是不可信的。因为尽管在某线程调用empty()或size()时返回值可能是正确的但是一旦函数返回其他线程就不再受限从而能自由地访问栈容器可能马上会有新元素入栈或者现有的元素立即出栈这会使前面线程得到的结果失效。 其次top()和pop()之间也存在着竞争条件例如 线程A线程Bif(!s.empty());if(!s.empty()); int const value s.top(); int const value s.top();s.pop()do_something(value);s.pop()do_something(value); 假设当前只有两个线程正在运行且在两个top()调用之间不存在其他操作那么栈容器不会被更改即两个线程会得到相同的值。另外在top()与pop()的调用之间也没有其他调用结果栈顶元素被调用了两次但栈顶的第二个元素却始终没被读取就丢弃了。 解决方法 为了线程安全在每次操作之前都加锁 面对第二个问题将top()和pop()操作合二为一 #include memory #include mutex #include stackusing namespace std;struct empty_stack :std::exception {const char* what() const throw(); };templatetypename T class threadsafe_stack { private:stackT data;mutable mutex m;public:threadsafe_stack() {};threadsafe_stack(const threadsafe_stack other){lock_guardmutex lock(other.m);data other.data;}threadsafe_stack operator(const threadsafe_stack) delete;void push(T new_value){lock_guardmutex lock(m);data.push(move(new_value));}shared_ptrT pop(){lock_guardmutex lock(m);if (data.empty()) throw empty_stack();shared_ptrTconst res(std::make_sharedT(data.top()));data.pop();return res;}void pop(T value){lock_guardmutex lock(m);if (data.empty()) throw empty_stack();value data.top();data.pop();}bool empty() const{lock_guardmutex lock(m);return data.empty();} };
http://www.hkea.cn/news/14284625/

相关文章:

  • 楚风网站建设工作室网站开发合同技术目标
  • 网站的运营与管理可以查企业备案的网站吗
  • 东莞网站优化多少钱好习惯网站
  • 赣州做网站jwordpress 主题改多频道
  • 东莞网站建设设做一元云购网站
  • 网站怎样做多语言切换网页界面模板设计
  • 网站代码案例什么叫seo优化
  • 四川省建设工程设备安全协会网站翻译网站平台建设
  • 网站安全建设必要性淘宝店铺如何推广
  • 无锡网页建站公司机械加工信息
  • 广州建网站兴田德润可信免费网站申请域名
  • iis部署网站提示建设中苏州网站设计网站开发公司
  • 网站怎么做外部优化信息流广告案例
  • 如何给网站做二维码vultr 搭建wordpress
  • 安徽两学一做网站网站如何做水晶按钮
  • 响应式网站软件视频网站管理系统
  • 手机网站 免费建站股票app开发价格
  • 合肥网站制作培训大兴网站建设
  • 做黑网站赚钱吗请简述常用的网页制作工具
  • 中国城投建设集团有限公司网站建设个人网站用什么软件
  • 汽车网站网页设计东莞常平网站设计
  • 高端网站开发公司唐山建设网站网站
  • 网站开发需求分析包括哪些方面黄岛做网站的公司
  • 网站建设 外文文献个人网站不能备案
  • wordpress扫描工具广告优化师
  • 电影网站做流量吗网络推广哪个公司好
  • 专题网站可以做什么wordpress 美化网站
  • 大学网站建设论文宁波seo哪家最便宜
  • 电线电缆技术支持中山网站建设网络营销郑州优化推广公司
  • 高端制作网站找哪个公司重庆开县网站建设报价