首页 > 其他分享 >12.17

12.17

时间:2024-12-17 23:09:29浏览次数:3  
标签:程序 C++ 12.17 编译器 volatile 内存 线程

  • 1.C++ 程序只需要表现得好像语句是按照顺序执行的。C++ 编译器和计算机自身只要能够确保每次计算的含义都不会改变,就可以改变执行顺序使程序运行得更快。
  • 自 C++11 开始,C++ 不再认为只有一个执行地址。C++ 标准库现在支持启动和终止线程以及同步线程间的内存访问。在 C++11 之前,程序员对 C++ 编译器隐瞒了他们的线程,有时候这会导致难以调试。
  • 某些内存地址可能是设备寄存器,而不是普通内存。这些地址的值可能会在同一个
    线程对该地址的两次连续读的间隔发生变化,这表示硬件发生了变化。在 C++ 中用
    volatile 关键字定义这些地址。声明一个 volatile 变量会要求编译器在每次使用该变
    量时都获取它的一份新的副本,而不用通过将该变量的值保存在一个寄存器中并复用它
    来优化程序。另外,也可以声明指向 volatile 内存的指针。
  • C++11 提供了一个名为 std::atomic<> 的特性,可以让内存在一段短暂的时间内表现得
    仿佛是字节的简单线性存储一样,这样可以远离所有现代处理器的复杂性,包括多线程
    执行、多层高速缓存等。有些开发人员误以为这与 volatile 是一样的,其实他们错了。
  • 操作系统也欺骗了程序和用户。实际上,操作系统的目的就是为了给每个程序讲一个让它
    们信服的谎言。最重要的谎言之一是,操作系统希望每个程序都相信它们是独立运行于计
    算机上的,而且这些计算机的内存是无限的,还有无限的处理器来运行程序的所有线程。
    操作系统会使用计算机硬件来隐藏这些谎言,这样 C++ 不得不相信它们。除了降低程序的运
    行速度外,这些谎言其实对程序运行并没有什么影响。不过,它们会导致性能测量变得复杂。

标签:程序,C++,12.17,编译器,volatile,内存,线程
From: https://www.cnblogs.com/xscya/p/18613628

相关文章

  • 12.17 CW 模拟赛 T4. 记忆碎片
    思路转化题意,问你在一个带权无向完全图中,如何填上\(w_i\in\left[1,\frac{n\cdot(n-1)}{2}\right]\),使得其最小生成树上的边权为给定的\(n-1\)个数考虑模仿\(\rm{kruskal}\)的方式,令\(f_S\)表示当前点集为\(S\),每次转移,如果当前边权需要在最小生......
  • 12.17随笔
    这里是12.17随笔UML图绘制--类图:https://blog.csdn.net/Qhx20040819/article/details/132268512?ops_request_misc=%257B%2522request%255Fid%2522%253A%252238d718ecb9472f600fa9689ab6e986fb%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=38d......
  • java面试问题(2024.12.17)
    记录java岗面试问题对java的了解Java是一门面向对象的编程语言,吸收了C++语言中大量的优点,但又抛弃了C++中容易出错的地方,如垃圾回收。Java又是一门平台无关的编程语言,通过java虚拟机(jvm)可以实现一次编译,处处运行。对jvm的了解Java虚拟机,是Java实现跨平台的关键所......
  • 12.17日报
    今天完成软件案例分析实验,以下为部分实验内容:packagecom.gdpu.controller;importcom.baomidou.mybatisplus.core.conditions.query.QueryWrapper;importcom.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;importcom.baomidou.mybatisplus.core.metadata.......
  • 上周热点回顾(12.11-12.17)
    热点随笔:· 我的2023年,35岁、父亲肺癌,失业,失恋、上岸 (久曲健)· 程序员的精力管理 (红文)· 一个程序猿的2023总结:《寻找》 (易墨)· .NETConf2023Chengdu-成都站圆满结束! (EdisonZhou)· ASP.NETCore8在Windows上各种部署模型的性能测试 (Agile.Zhou)·......
  • 闲话12.17
    今天周日,摆了。上午六点四十起床去吃早饭了,吃完饭回了宿舍接着睡......
  • 12.17每日总结
    绘制完整的数据流图:大概去了解了一下数据流图的各种符号,但我发现跟学长所用的符号不一样,那就先以学长的符号作为标准画一下数据流图,本人感觉其实这个思路跟业务流程图差不多:   l然后学习类图画法:     ......
  • 12.17每日总结
    今天在复习软件设计模式 软件设计模式产生背景其实我们软件的很多概念往往来自于其他专业,设计模式就是其中一个:"设计模式"最初并不是出现在软件设计中,而是被用于建筑领域的设计中。我们的设计模式就是根据建筑领域中设计模式的概念而产生的:1977年ChristopherAlexander......
  • 12.17
    昨天光顾着看电影了晚上没过来。看的电影是《保你平安》,主演是大鹏?看不出来啊。看得挺离谱的,没想到一部电影能把我们现在学的出师表,概率和英语的?还有万豪是真难绷,想了解的可以看一遍。就是那匹马到底是啥?整的挺魔幻。但是看完莫名挺感动的,这部电影的主题好像是关于网络谣言,然......
  • 日记 2022.12.17:22年实验中学秋季训练 6
    A.gym103428m问有多少个长度为\(n\)的01串,其中有\(m\)个是1,且最长连续的1的长度恰好是\(k\)。十万。Trick1容斥系数怎么算?Trick2限制了这个串的长度和\(1\)的个数,这意味着什么?插板的东西是什么?solution错解明显不顾最长连续段限制答案是$g(n,m)=\bin......