自己做一个网站多少钱/竞价托管收费标准

自己做一个网站多少钱,竞价托管收费标准,如何免费制作网站,网络营销的特点有多选题count; count--; 我们知道,/--操作并不是原子性的,其实对应三条汇编指令来完成的。 读取:从内存中把变量的值读取到寄存器修改:在寄存器里将变量的值1/-1写入:把修改后的值写入到内存 在单线程环境下,这…
count++;
count--;

我们知道,++/--操作并不是原子性的,其实对应三条汇编指令来完成的。

  • 读取:从内存中把变量的值读取到寄存器
  • 修改:在寄存器里将变量的值+1/-1
  • 写入:把修改后的值写入到内存

在单线程环境下,这三个步骤是顺序执行的不会有问题。但是在多线程环境下,多个线程可能对同一个变量同时进行++/--操作,从而导致数据竞争的问题。

可以看下面的过程演示。

一:

二:

三:

C++11是通过加锁来保证++/--操作的原子性的。

std::lock_guard<std::mutext>(mtx);
count++;
std::unlock_guard<std::mutex>(mtx);

互斥锁是比较重的,临界区代码稍稍复杂的情况下建议使用。从系统理论上来讲,使用CAS无锁操作来保证++/--操作的原子性就足够了,其实并不是不加锁,只是不在软件层面上加锁解锁,而是在硬件层面上实现的。

#include<iostream>
#include<thread>
#include<list>
#include<atomic>
using namespace std;volatile std::atomic_bool isReady = false;
volatile std::atomic_int myCount = 0;void task()
{while (!isReady){std::this_thread::yield(); // 线程让出当前的CPU时间片,等待下一次调度}for (int i = 0; i < 100; i++){myCount++;}
}
int main()
{list<std::thread> tlist;for (int i = 0; i < 10; i++){tlist.push_back(std::thread(task));}std::this_thread::sleep_for(std::chrono::seconds(3));isReady = true;for (auto& t : tlist){t.join();}std::cout << "myCount: " << myCount << std::endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/74058.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【时时三省】(C语言基础)习题2 scanf函数

山不在高&#xff0c;有仙则名。水不在深&#xff0c;有龙则灵。 ----CSDN 时时三省 用下面的scanf函数输入数据&#xff0c;使a 3&#xff0c;b 7&#xff0c;x 8.5&#xff0c;y 71.82&#xff0c;c1 A&#xff0c;c2 x在键盘上应如何输入? 分析第一个 scanf 函数&…

微信小程序计算属性与监听器:miniprogram-computed

小程序框架没有提供计算属性相关的 api &#xff0c;但是官方为开发者提供了拓展工具库 miniprogram-computed。 该工具库提供了两个功能&#xff1a; 计算属性 computed监听器 watch 一、安装 miniprogram-computed 在项目的根目录下&#xff0c;使用如下命令&#xff0c;…

Oracle 数据库安全评估(DBSAT)简明过程

下载DBSAT 从这里下载。 实际是从MOS中下载&#xff0c;即&#xff1a;Oracle Database Security Assessment Tool (DBSAT) (Doc ID 2138254.1)。 最新版本为3.1.0 (July 2024)&#xff0c;名为dbsat.zip&#xff0c;近45MB。 $ ls -lh dbsat.zip -rw-rw-r-- 1 oracle oins…

【Linux 维测专栏 1 -- Hung Task 分析与验证】

文章目录 Linux Hung Task 简介1. Hung Task 概述2. D 状态与 Hung Task3. Hung Task 的工作原理4. Hung Task 的配置5. Hung Task 的典型输出6. Hung Task 的应用场景7. kernel 配置7.1 编译选项7.2 参数控制7.3 验证方法4. 扩展接口 8. 注意事项 Linux Hung Task 简介 1. Hu…

公链开发费用及其构成内容详析

在区块链技术迅速发展的今天&#xff0c;公链&#xff08;Public Blockchain&#xff09;作为去中心化、不可篡改、高安全性的重要应用之一&#xff0c;在金融、供应链、游戏等多个领域得到了广泛应用。然而&#xff0c;开发一条公链并非易事&#xff0c;它不仅需要高度专业技能…

DM 达梦上的日志挖掘 DBMS_LOGMNR

适用场景 在 DM 中&#xff0c;用户可以使用 DBMS_LOGMNR 包对归档日志进行挖掘&#xff0c;重构出 DDL 和 DML 等操作&#xff0c;并通过获取的信息进行更深入的分析&#xff1b;同样&#xff0c;可以对归档日志文件进行恢复被误操作的数据&#xff0c;并进行故障跟踪&#x…

JavaWeb之WebSocket

目录 一、 websocket 概念二、WebSocket原理三、WebSocket特点四、WebSocket应用场景五、Websocket基本使用1、创建Websocket对象2、Websocket事件3、Websocket方法4、前端服务程序 六、聊天室案例1、Tomcat版本&#xff1a;8.0.442、Maven 依赖&#xff1a;3、前端代码4、后端…

字符指针的三道例题+算法改进

目录 一.杨氏矩阵 1.初级 2.想把下标带回来 二.字符串左旋 算法改进 三.判断是否为字符串旋转结果 算法改进 四. 3个字符函数 1.strcat 2.strncat 3.strstr 一.杨氏矩阵 数字矩阵&#xff0c;每行从左到右递增&#xff0c;每列从上到下递增&#xff0c;编写程序在矩…

VSCode中搜索插件显示“提取扩展时出错。Failed to fetch”问题解决!

大致的问题如下&#xff0c;在VSCode的插件商店搜索插件时提示如下&#xff1a; 导致的情况有以下几点&#xff1a; 1、代理问题&#xff0c;如果是代理引起的&#xff0c;可以继续使用代理后也能搜索和安装插件。 2、还有可能是你的所连接的网络设置了防火墙&#xff0c;比较…

双指针(2)—三数之和

文章目录 题目解析解法&#xff08;排序双指针&#xff09;&#xff1a;哈希解法附加Java代码&#xff1a; 力扣题目&#xff1a;三数之和 题目解析 解法&#xff08;排序双指针&#xff09;&#xff1a; **算法思路&#xff1a;** 本题与两数之和类似&#xff0c;是⾮常经典的…

JVM 知识点梳理

JDK 、JRE、JVM JDK&#xff08; Java Development Kit &#xff09; Java开发工具包 JRE 开发命令工具&#xff08;运行java.exe、编译javac.exe、javaw.exe&#xff09; JRE&#xff08; Java Runtime Environment &#xff09;Java运行环境 JVM Java核心类库&#xff08;l…

DeepSeek-R1论文深度解析:纯强化学习如何引爆LLM推理革命?

技术突破&#xff1a;从“无监督”到“自主进化”的跨越 paper &#xff1a;https://arxiv.org/pdf/2501.12948目录 技术突破&#xff1a;从“无监督”到“自主进化”的跨越1 DeepSeek-R1-Zero&#xff1a; RLnoSFT1.1 R1-Zero&#xff1a; GRPO&#xff08;Group Relative Po…

表格标题竖直

使用文本方式使表格怎么竖列 思路&#xff1a;表格竖直书写&#xff0c;里面的内容水平书写 使用到的是css中的文本效果&#xff1a; writing-mode&#xff1a;书写方式horizontal-tb&#xff1a;水平vertical-rl&#xff1a;竖直<style>table {writing-mode: vertical…

AI+视频赋能智慧农业:EasyCVR打造全域可视化农场监管平台

随着科技的飞速发展&#xff0c;传统农业正加速向智慧农业转型&#xff0c;农场管理也迎来了前所未有的变革机遇。在这一进程中&#xff0c;如何有效整合先进的信息技术&#xff0c;实现农场的精准化、智能化管理&#xff0c;成为了摆在农场主和农业管理者面前的关键课题。 基于…

简化神经元模型6 -- Hindmarsh-Rose Model

Hindmarsh-Rose 模型 目录 0. 写在前面 1. Hindmarsh-Rose 模型的定义 2. Hindmarsh-Rose 模型簇发放的动力学机制 3. Hindmarsh-Rose 模型的其他发放模式 4. 分析过程所用到的一系列 BrainPy 代码 0. 写在前面 前面介绍了: Hodgkin-Huxley Model 简化神经元模型1 – LIF M…

第六届电气、电子信息与通信工程国际学术会议 (EEICE 2025)

重要信息 官网&#xff1a;www.eeice.net&#xff08;点击了解参会投稿等&#xff09; 时间&#xff1a;2025年4月18-20日 地点&#xff1a;中国-深圳技术大学 简介 第六届电气、电子信息与通信工程 (EEICE 2025&#xff09;将于2025年4月18-20日在中国深圳召开。 EEICE 20…

计算机操作系统(三) 操作系统的特性、运行环境与核心功能(附带图谱更好对比理解))

计算机操作系统&#xff08;三&#xff09; 操作系统的特性、运行环境与核心功能 前言一、操作系统的基本特性1.1 并发1.2 共享1.3 虚拟1.4 异步 二、操作系统的运行环境2.1 硬件支持2.2 操作系统内核2.3 处理机的双重工作模式2.4 中断与异常 三、操作系统的主要功能3.1 处理机…

批量将 PPT 转换为PDF/XPS/JPG图片等其它格式

PPT 文档经常有转换为其它格式的需求&#xff0c;比如将 PPT 转换为 PDF、将 PPT 转换为图片、生成 PPT 预览图等&#xff0c;这在某些场景下非常的有用&#xff0c;今天给大家介绍的就是如何批量将 PDF 转换为 PDF、JPG、Tiff 等多种格式的操作。 在工作中我们经常需要接触 PP…

【css酷炫效果】纯CSS实现3D翻转卡片动画

【css酷炫效果】纯CSS实现3D翻转卡片动画 缘创作背景html结构css样式完整代码效果图 想直接拿走的老板&#xff0c;链接放在这里&#xff1a;https://download.csdn.net/download/u011561335/90490472 缘 创作随缘&#xff0c;不定时更新。 创作背景 刚看到csdn出活动了&am…

Flask多参数模版使用

需要建立目录templates&#xff1b; 把建好的html文件放到templates目录里面&#xff1b; 约定好参数名字&#xff0c;单个名字可以直接使用&#xff1b;多参数使用字典传递&#xff1b; 样例&#xff1a; from flask import render_template # 模板 (Templates) #Flask 使用…