当我第一次看《STL源码剖析》的时候,我就觉得type traits是stl的基础,是一个很有趣,很值得学习的东西。为了使C++成为modern C++,标准委员会在C++ ...
当我第一次看《STL源码剖析》的时候,我就觉得type traits是stl的基础,是一个很有趣,很值得学习的东西。为了使C++成为modern C++,标准委员会在C++ ...
1.查看CPU详细信息 在Linux服务器上查看CPU详细信息:cat /proc/cpuinfo输出结果: 上面只截取了一部分信息,完整的CPU信息请参考文末附录,这个命令...
Python是一种解释型,面向对象,动态数据类型的高级语言 基础语法 单行注释 # 多行注释 '''...''',"""...""" 缩进 同个代码块的语句必须包含相同的缩进...
命令行使用 工作台(Workbench) 命令面板 命令面板根据输入框里的第一个字符来决定提供什么功能 #:用于显示和跳转工作区中的符号 >:用于显示所有的命令 @ :用于显...
最近在使用nanosleep的时候又踩坑了。于是整理下linux短延迟的用法。 用法 回顾下秒的换算:ms(毫秒),μs(微秒),ns(纳秒),ps(皮秒)1s = 1000...
不能在类里直接初始化const数据成员,const数据成员属于某个对象,不同对象const数据成员的值可能不同 const数据成员只能在类的构造函数的初始化列表中进行初始化 ...
锁是防止资源竞争的一种机制 操作系统层 自旋锁(spinlock):非阻塞,循环获取直到成功为止,不涉及线程上下切换,适用于线程持有锁的时间较短,锁获取和释放频繁的场景互斥锁...
一般来说,线程上下文切换在us级别(几百ns到几个us之间)线程上下文切换导致了CPU cache的丢失,这个对性能影响才是最关键的
core dump概念 A core dump is the recorded state of the working memory of a computer progr...
多个线程同时调用某个函数,std::call_once可以保证多线程对该函数只调用一次 pthread_once实现
内存 存在栈的值,大小在编译期就需要确定,栈上存储的变量生命周期在当前调用栈的作用域内,无法跨调用栈引用堆存放大小未知或动态伸缩的数据,堆的内存管理包括TGC(Tracing...
重载:overload 重写:override 重定义:redefine final Specifies that a virtual function cannot be ...
命令描述go build编译代码go clean清除编译产生的文件go run编译源码并直接执行,不会在当前目录保留可执行文件go fmt代码格式化go install将编译...
使用 inline 标记一个函数时,允许编译单元中有相同签名的实体,最后链接时只保留一个。这样你就可以将函数的实现写在头文件里,而不用担心冲突了。而如果没有 inline 标...
编译器会把一个lambda表达式生成一个匿名类的匿名对象,并在类中重载函数调用运算符。 编译器翻译如下 mutable标记使捕获的内容可更改(缺省不可更改捕获的值,相当于定义...
tmpfs是Linux上一种基于内存的文件系统,使用内存或swap分区来存储文件 动态文件系统的大小,默认最大为物理内存的一半,可进行调整,如果没有使用是不占物理内存的 速度...
今天手贱把Chrome的书签误删了,这玩意浏览器删除都不带提醒的,无声无息就没了,那么多保存的网页,想哭的心都有了! 于是在网上好好查了查,还好机智的Chrome还在本地有个...
对于C/C++程序员来说,如果程序core dump了,没有core文件就很难知道发生了什么,只能重新更改系统配置,让core文件产生(通常是在.bash_profile中,...
设置接收超时 超时返回错误:Resource temporarily unavailable UDP接收ICMP端口不可达 参考 linux网络编程系列(五)--setsoc...
生成 ssh key GitLab / GitHub 多账户下设置 ssh keys[https://www.jianshu.com/p/a4f1422d7c63] git ...