E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
C++11自旋锁
C++学习笔记——typedef和using
C++11
中扩展了using的使用场景(
C++11
之前using主要用来引入命名空间名字如:usingnamespace
翟羽嚄
·
2024-02-08 01:27
C++
c++
学习
笔记
C++ 右值引用 std::move和std::forward的使用
前言右值引用,std::move(移动语义)和std::forward(完美转发)都是
C++11
里面的特性。使用右值引用和移动语义,可以避免无谓的复制,提供了程序性能。
abcd552191868
·
2024-02-08 00:18
零声-linux课程总结
C++11
move
forward
右值引用
深拷贝
浅拷贝
移动语义
使用
C++11
相关特性实现一个线程池
前言PS:本文来自于腾讯课堂零声学院上课课件关于线程池的基本概念可以参考LinuxC实现线程池,提到了如何实现线程池,如果使用
C++11
来实现一个线程池,应该如何实现呢,在实现线程池之前,先熟悉一下涉及到相关知识点
abcd552191868
·
2024-02-08 00:48
C++11线程池
C++异步
thread
函数对象
function对象
【C++】树型结构关联式容器:map/multimap/set/multisetの使用指南(27)
YY的《C++》专栏YY的《
C++11
》专栏YY的《Linux》专栏YY的《数据结构》专栏YY的《C语言基础》专栏YY的《初学者易错点》专栏YY的《小小知识点》专栏目录一.键值对二.关联式容器&序列式容器三
YY的秘密代码小屋
·
2024-02-07 23:16
YY
滴
《C++系列》
c++
java
开发语言
【C++】多态
多态如何理解多态C++中多态的条件虚函数虚函数的重写虚函数重写的两个例外
C++11
中两个关键字finaloveride重载、重写(覆盖)、重定义(隐藏)的对比抽象类接口继承和实现继承多态的原理虚函数表动态绑定与静态绑定单继承和多继承关系的虚函数表单继承中的虚函数表多继承中的虚函数表菱形继承中的多态菱形虚拟继承中的多态如何理解多态
#include>
·
2024-02-07 22:42
c++
面试
C++进阶--
C++11
包装器
目录一、function包装器1.1function包装器的概念1.2function包装器实例化(统一类型)1.4function包装器的意义二、bind包装器2.1bind包装器的概念2.1.1bind包装器2.1.2调用bind的一般形式2.2bind包装器绑定固定参数2.2.1无意义的绑定2.2.2绑定固定参数2.3bind包装器调整传参顺序2.4bind包装器的意义一、function包
sushang~
·
2024-02-07 22:09
c++
开发语言
C++进阶--
C++11
智能指针
目录一、智能指针的使用及原理1.1什么是智能指针1.2智能指针的发展历史1.3智能指针的使用1.3.1内存泄漏问题1.3.2利用异常的重新捕获解决1.3.3利用智能指针解决1.4智能指针的原理1.4.1需要考虑的问题1.4.2为什么要解决智能指针对象的拷贝问题二、C++中的智能指针2.1std::auto_ptr2.1.1管理权转移2.1.2auto_ptr的模拟实现2.2std::unique_
sushang~
·
2024-02-07 22:09
c++
java
开发语言
C++进阶--
C++11
线程库
目录一、线程库(thread)1.1线程对象的构造方式1.1.1调用无参的构造函数1.1.2调用带参的构造函数1.1.3调用移动构造函数1.2thread提供的成员函数1.3获取线程的id方式1.4线程函数的参数问题1.5join与detach1.5.1join方式1.5.2detach方式二、互斥量库(mutex)2.1mutex的种类2.1.1std::mute2.1.2std::recurs
sushang~
·
2024-02-07 22:39
c++
开发语言
C++进阶--
C++11
lambda表达式
C++进阶--C++11lambda表达式一、lambda表达式的概念二、lambda表达式的语法2.1lambda表达式语法格式2.2lambda表达式捕获列表说明三、lambda表达式交换两个数3.1标准写法3.2利用捕捉列表进行捕捉3.3利用捕捉列表进行捕捉四、lambda表达式的底层原理4.1底层原理4.2lambda表达式之间不能相互赋值一、lambda表达式的概念 lambda表达式
sushang~
·
2024-02-07 22:39
c++
java
jvm
【51单片机】Kn独立按键控制【LED亮灭】【LED状态】【LED二进制式显示】【LED不断移位】(4)
YY的《C++》专栏YY的《
C++11
》专栏YY的《Linux》专栏YY的《数据结构》专栏YY的《C语言基础》专栏YY的《初学者易错点》专栏YY的《小小知识点》专栏YY的《单片机期末速过》专栏YY的《C
YY的秘密代码小屋
·
2024-02-07 21:47
YY滴《单片机系列》
51单片机
mongodb
数据库
【51单片机】实现一个动静态数码管显示项目(前置知识铺垫,代码&图演示)(5)
YY的《C++》专栏YY的《
C++11
》专栏YY的《Linux》专栏YY的《数据结构》专栏YY的《C语言基础》专栏YY的《初学者易错点》专栏YY的《小小知识点》专栏YY的《单片机期末速过》专栏YY的《C
YY的秘密代码小屋
·
2024-02-07 21:46
YY滴《单片机系列》
51单片机
mongodb
数据库
【Linux】内核的锁机制——互斥锁,
自旋锁
博客主页:PannLZ系列专栏:《Linux系统之路》欢迎关注:点赞收藏✍️留言文章目录1.互斥锁1.1Mutex(互斥锁)1.2互斥锁API1.3使用例子1.4一些规则2.
自旋锁
2.1示例3.
自旋锁
和互斥锁的比较
PannLZ
·
2024-02-07 20:59
Linux系统之路
linux
运维
服务器
linux编程常见的锁(互斥锁、读写锁、
自旋锁
等)
在Linux编程中,常见的锁(Lock)机制用于保护共享资源,防止多个线程或进程同时访问同一资源,从而导致数据不一致或其他问题。以下是几种常见的锁机制:互斥锁(Mutex):也被称为互斥量,是最常用的锁之一。它保证在同一时间只有一个线程可以访问被保护的资源。常见的函数有pthread_mutex_init(),pthread_mutex_lock(),pthread_mutex_unlock(),
稚肩
·
2024-02-07 15:03
嵌入式linux
linux
互斥锁
自旋锁
读写锁
学习->C++篇六:string类---上篇
使用string常用构造函数长度和容量相关的函数访问string类对象中的字符方式一:用下标的方式方式二:用迭代器(string的迭代器底层是指针)方式三:范围for(
C++11
)vs2022下的string
且随疾风前行->
·
2024-02-07 14:23
C++
c++
学习
开发语言
C++算法比赛技巧——取消同步流、不使用endl
本文是玩转
C++11
的输入输出的单独文章,更多内容可以点击链接跳转文章目录C/C++的输入输出(1)scanf和printf(2)cin和cout[1]cin[2]cout(3)取消同步流[1]ios是什么
默示MoS
·
2024-02-07 09:05
c++
算法
c++11
智能指针底层原理和代码模拟实现
目录内存泄漏的危害如何避免内存泄漏智能指针的使用及原理RAII智能指针的原理c++库中3个智能指针auto_ptr(简单实现)unique_ptr(简单粗暴的防止拷贝)share_ptr为什么需要智能指针--内存泄漏内存泄漏的危害什么是内存泄漏:内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并不是指内存在物理上的消失,而是应用程序分配某段内存后,因为设计错误,失去了对该
高高__
·
2024-02-07 09:34
c++
开发语言
【
c++11
std::array 简单实现】
#include#include#include#include#include#include#includetemplatestruct__array_traits{typedef_Tp_Type[_Nm];typedef::std::is_swappable_IS_Swappable;typedef::std::is_nothrow_swappable_IS_Nothrow_Swappabl
XNB's Not a Beginner
·
2024-02-07 08:00
ADT数据结构实现
设计模式
语言特性
Modern
Cpp
c++
算法
开发语言
设计模式
数据结构
【单例 & 定长 & 优先 & 动态线程池】 (
C++11
| 拒绝策略 | 动态任务分配 | 单例设计模式 )
目录简介概念优点实现思路1.初始化线程池2.线程池工作流程3.任务执行4.线程生命周期管理5.关闭线程池IncludeCV&enums内嵌类定义私有成员属性私有辅助函数静态成员类外初始化测试函数完整代码简介概念线程池(ThreadPool)是一种基于池化技术的多线程处理模式。目的是为了减少在创建和销毁线程上所花的时间以及系统资源的开销,提高系统的工作效率。线程池维护多个线程,这些线程处于等待状态,
XNB's Not a Beginner
·
2024-02-07 08:29
ADT数据结构实现
语言特性
Modern
Cpp
c++
设计模式
数据结构
后端
架构
【编程】linux多线程同步机制——屏障
复习:线程同步方式:互斥量,读写锁,条件变量,
自旋锁
,屏障。屏障(barrier)是用户协调多个线程并行工作的同步机制。屏障允许每个线程等待,直到所有合作线程都到达某一点,然后从该点继续执行。
榕树子
·
2024-02-07 06:40
linux
c
编程
linux
c
【见微知著】OpenCV中
C++11
lambda方式急速像素遍历
C++11lambda语法
C++11
中引入了lambda表达式,它支持定义一个内联(inline)的函数,作为一个本地的对象或者一个参数。
gloomyfish
·
2024-02-07 05:17
opencv
c++
人工智能
计算机视觉
缺陷检测
深度学习
C++ 11新特性之tuple
概述在C++编程语言的发展历程中,
C++11
标准引入了许多开创性的新特性,极大地提升了开发效率与代码质量。其中,tuple(元组)作为一种强大的容器类型,为处理多个不同类型的值提供了便捷的手段。
hope_wisdom
·
2024-02-07 01:12
C++
11新特性
c++
C++
11
tuple
【
C++11
/C++17】左值与右值
左值和右值是C++中的两个重要概念,它们涉及到变量的存储位置和生命周期。左值(Lvalue)左值表示一块具有确定地址的内存单元。它表示一个具体的、明确存在的存储单元。可以被取地址运算符(&)获取其地址。变量、数组元素、函数参数等都是左值。右值(Rvalue)右值表示一个临时的、不拥有自己名字的内存单元。它通常出现在赋值语句的右侧,如常量、字面量、临时对象等。不能被取地址运算符(&)获取其地址。右值
_君莫笑
·
2024-02-06 22:14
c++
开发语言
C++11
C++线程中的五种常见锁与C++ RAII锁的常见用法
C++多线程中的锁主要有五类:互斥锁(信号量)、条件锁、
自旋锁
、读写锁、递归锁。互斥锁互斥锁用于控制多个线程对它们之间共享资源互斥访问的一个信号量。
c+猿辅导
·
2024-02-06 22:00
手把手教你C++开发
手把手教你服务器开发
c++
开发语言
C++11
多线程学习: 利用RAII正确释放
风险代码#include#includevoiddo_something(unsignedinti){printf("%d\n",i);}structfunc{int&i;func(int&i_):i(i_){}voidoperator()(){for(unsignedj=0;j<10;++j){do_something(i);//潜在访问隐患:悬空引用}}};classthread_guard{
在?升龙拳!
·
2024-02-06 22:00
C++多线程
c++
【C++】11新特性:std::thread、std::mutex和两种RAII方式的锁封装
一、std::thread在
C++11
之前,开发多线程的程序,一般都是使用pthread_create来创建线程,繁琐且不易读,可以看一下它的函数原型:intpthread_create(pthread_t
不知所措的渣渣辉
·
2024-02-06 22:30
【C++】
c++
开发语言
算法
C++ 多线程编程(二) 各种各样的锁
.互斥锁(mutex)2.定时互斥锁(timed_mutex)3.条件变量(condition_variable)4.读写锁(shared_mutex)5.递归锁(recursive_mutex)6.
自旋锁
璇焱如柳
·
2024-02-06 22:59
C++相关
c++
C++多线程:锁管理(lock)
而今天学习的锁管理,与mutex息息相关,它们都是使用RAII风格来进行锁管理,主要有下面几种:std::lock_guard(
C++11
)std::unique_lock(
C++11
)std::share_lock
胖小迪
·
2024-02-06 22:59
CPP
c++
开发语言
后端
C++11
线程中的几种锁
C++11
线程中的几种锁互斥锁(Mutex)条件锁
自旋锁
读写锁递归锁线程之间的锁有:互斥锁、条件锁、
自旋锁
、读写锁、递归锁。一般而言,锁的功能与性能成反比。
GoodLinGL
·
2024-02-06 22:28
操作系统
c++
c++
多线程
并发编程
锁
C++11
智能指针
普通指针的不足new和new[]的内存需要用delete和delete[]释放。程序员的主观失误,忘了或漏了释放。程序员也不确定何时释放。普通指针的释放类内的指针,在析构函数中释放。C++内置数据类型,如何释放?new出来的类,本身如何释放?指针指针的设计思路智能指针是类模板,在栈上创建智能指针对象。把普通指针交给智能指针对象。智能指针对象过期时,调用析构函数释放普通指针的内存。智能指针的类型au
何亮hook_8285
·
2024-02-06 21:41
C++之Lambda表达式
1.概述
C++11
中的Lambda表达式用于定义并创建匿名的函数对象,以简化编程工作。
陆不凡
·
2024-02-06 21:37
C++
C++
Lambda表达式
C++新特性:lambda表达式
Lambda表达式最初是在
C++11
标准中引入的,可以使用Lambda表达式来代替函数指针和Functor对象。
一如年少模样呀
·
2024-02-06 21:36
C++
c语言
c++
开发语言
C++多线程:Lambda表达式
定义Lambda表达式可以说是
c++11
引用的最重要的特性之一,虽然跟多线程关系不大,但是它在多线程的场景下使用很频繁,所以在多线程这个主题下介绍它更合适。
胖小迪
·
2024-02-06 21:05
CPP
c++
开发语言
后端
C++11
特性:Lambda表达式
什么是Lambda表达式Lambda表达式,也称为匿名函数,允许定义一个没有名称的函数表达式。Lambda表达式特别适用于编写简短的回调函数或实现简单的操作,而不需要正式定义一个函数。在这里说一下什么是回调函数回调函数是一个通过参数传递给另一个函数,并在那个函数内部被执行的函数。这种机制允许程序在特定的时刻或条件下,自动调用某个函数。回调函数是一种在编程中广泛使用的概念,尤其在异步编程、事件监听和
character_0205
·
2024-02-06 21:35
开发语言
C++多线程编程(三): std::thread线程类
0前言在
C++11
以前,如果要使用多线程,就需要使用各平台的多线程库,例如,Linux上可以使用pthread,windows上可以使用win32或者MFC提供的多线程API,也就是说,如果要使用多线程
luofengmacheng
·
2024-02-06 16:21
C++
c++
开发语言
C++11
之lambda表达式
C++11
之lambda表达式基本用法捕获列表返回值函数本质基本用法lambda表达式是
C++11
最重要也是最常用的特性之一,这是现代编程语言的一个特点,lambda表达式有如下的一些优点:声明式的编程风格
小一!
·
2024-02-06 11:51
lambda表达式
C++
C++:constexpr 和 const 的区别
constexpr是
C++11
标准新添加的关键字,原先的标准中是只有const关键字的,作用是表示只读常量。但是,其实只读常量是两个属性,分为只读和常量,都用const来表示会产生歧义。
见牛羊
·
2024-02-06 10:47
C++
c++
开发语言
java EE 初阶 — CAS 的介绍
文章目录CAS1.什么是CAS2.CAS是怎么实现的3.CAS有哪些应用3.1实现原子类3.2实现
自旋锁
4.CAS的ABA问题4.1什么是ABA问题4.2ABA问题引来的BUG4.3解决方案5.相关面试题
与大师约会
·
2024-02-06 10:14
java
EE
从入门到进阶
java-ee
java
多线程
java EE初阶 — Synchronized 的原理
文章目录1.Synchronized的优化操作1.1偏向锁1.2轻量级锁(
自旋锁
)1.3重量级锁2.其他的优化操作2.1锁消除2.2锁粗化3.相关面试题1.Synchronized的优化操作两个线程针对同一个对象加锁
与大师约会
·
2024-02-06 10:44
java
EE
从入门到进阶
java-ee
多线程
JavaEE 初阶 -- 多线程进阶
文章目录常见锁策略乐观锁VS悲观锁轻量级锁VS重量级锁
自旋锁
VS挂起等待锁互斥锁VS读写锁可重入锁VS不可重入锁关于死锁的情况死锁的4个必要条件(缺一不可)公平锁和非公平锁synchronized的特点关于锁策略的几个面试题
且将新火试新茶,诗酒趁年华
·
2024-02-06 10:12
java-ee
java
【单片机】简单的自定义延时程序设计(代码演示)
YY的《C++》专栏YY的《
C++11
》专栏YY的《Linux》专栏YY的《数据结构》专栏YY的《C语言基础》专栏YY的《初学者易错点》专栏YY的《小小知识点》专栏YY的《单片机期末速过》专栏YY的《C
YY的秘密代码小屋
·
2024-02-06 09:42
YY滴《单片机系列》
YYの小小知识点
单片机
mongodb
数据库
【Linux系列】fork( )函数原理与应用详解——了解【父子进程及其特性】(代码演示,画图帮助理解,思维导图,精简)(11)
YY的《C++》专栏YY的《
C++11
》专栏YY的《Linux》专栏YY的《数据结构》专栏YY的《C语言基础》专栏YY的《初学者易错点》专栏YY的《小小知识点》专栏YY的《单片机期末速过》专栏YY的《C
YY的秘密代码小屋
·
2024-02-06 09:41
YY滴
《Linux系列》
linux
数据库
mongodb
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
YY的《C++》专栏YY的《
C++11
》专栏YY的《Linux》专栏YY的《数据结构》专栏YY的《C语言基础》专栏YY的《初学者易错点》专栏YY的《小小知识点》专栏YY的《单片机期末速过》专栏YY的《C
YY的秘密代码小屋
·
2024-02-06 09:38
YY滴《单片机系列》
51单片机
mongodb
数据库
C++ std::this_thread知识整理
二、使用步骤1.引入库总结前言
C++11
新标准引入了四个支持多线程的文件,、、、、。头文件主要声明了std::thread类,另外s
那条暗黑的狼
·
2024-02-06 08:41
多线程
多线程
c++
【C/C++ 15】
C++11
右值引用
C++传统的引用都是左值引用,
C++11
增添了右值引用的特性。无论左值引用还是右值引用,都是给对象取别名。
AllinTome
·
2024-02-06 08:37
C/C++
c语言
c++
算法
C++多线程编程:深入剖析std::thread的使用方法
C++11
多线程thread一、线程thread1.1、语法1.1.1、构造函数1.1.2、主要成员函数1.2、简单线程的创建1.3、线程封装1.4、std::this_thread1.4.1、std:
Lion Long
·
2024-02-06 08:06
C/C++技术干货
c++
开发语言
linux
thread
后端
c++11
多线程
C++11
多线程:线程的创建及启动
线程资源不能被覆盖在
C++11
之前的C++98/03标准是不支持的多线程的。想要使用多线程需要使用使
scx_link
·
2024-02-06 08:06
C
and
C++的笔记
c++
算法
开发语言
高并发多线程安全之原子性问题、CAS机制及问题解决方案
java内存模型(JMM)与可见性问题前言在java内存模型中,对多线程间交互,涉及到原子性问题、可见性问题、以及有序性问题;这篇文章主要讲解的是多线程高并发的原子性问题,以及解决原子性问题、CAS机制、
自旋锁
的优缺点
踩踩踩从踩
·
2024-02-06 08:58
java高并发多线程
java
线程安全
多线程
【C/C++ 13】
C++11
高效特性
目录一、初始化列表二、auto三、decltype四、可变参数列表五、lambda表达式
C++11
在C++98的基础上增添了许多特性,但是同时也使得C++程序的开发变得复杂繁琐,让众多开发者苦不堪言,于是我们需要从
AllinTome
·
2024-02-06 07:41
C/C++
c++
开发语言
【C/C++ 16】
C++11
线程库
在
C++11
之前,涉及到多线程问题,都是和平台相关的,比如windows和linux下各有自己的接口,这使得代码的可移植性比较差。
C++11
中最重要的特性就是对线程进行支持了,使得C++在并行编程时不
AllinTome
·
2024-02-06 07:41
C/C++
c++
开发语言
clang 与 GCC 的区别
Clang是一个由Apple主导编写,基于LLVM的C/C++/Objective-C编译器2013年4月,Clang已经全面支持
C++11
标准,并开始实现C++1y特性(
octopusHu
·
2024-02-06 05:20
编译文档
编译器
gcc/gdb编译调试
clang
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他