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++11
标准模板(STL)- 算法(std::unique)
定义于头文件算法库提供大量用途的函数(例如查找、排序、计数、操作),它们在元素范围上操作。注意范围定义为[first,last),其中last指代要查询或修改的最后元素的后一个元素。移除范围内的连续重复元素std::uniquetemplateForwardItunique(ForwardItfirst,ForwardItlast);(1)(C++20前)templateconstexprForw
繁星璀璨G
·
2023-12-17 23:20
#
修改序列的操作
c++
算法
unique
C++11
标准模板(STL)- 算法 - 堆操作(std::sort_heap)
定义于头文件算法库提供大量用途的函数(例如查找、排序、计数、操作),它们在元素范围上操作。注意范围定义为[first,last),其中last指代要查询或修改的最后元素的后一个元素。数据结构的堆物理结构是数组,逻辑结构是完全二叉树将一个最大堆变成一个按升序排序的元素范围std::sort_heaptemplatevoidsort_heap(RandomItfirst,RandomItlast);(
繁星璀璨G
·
2023-12-17 23:20
#
堆操作
算法
c++
堆
sort_heap
C++标准模板(STL)- 算法 (std::generate_n)
将相继的函数调用结果赋值给一个范围中的N个元素std::generate_ntemplatevoidgenerate_n(OutputItfirst,Sizecount,Generatorg);(1)(
C+
繁星璀璨G
·
2023-12-17 23:49
#
修改序列的操作
1024程序员节
算法
search_n
c++
C++标准模板(STL)- 算法 (std::move)
将某一范围的元素移动到一个新的位置std::movetemplateOutputItmove(InputItfirst,InputItlast,OutputItd_first);(1)(
C++11
起)(
繁星璀璨G
·
2023-12-17 23:19
#
修改序列的操作
c++
算法
move
c++ websocket 协议分析与实现
前言网上有很多第三方库,nopoll,uwebsockets,libwebsockets,都喜欢回调或太复杂,个人只需要在后端用,所以手动写个;1:环境ubuntu18g++(支持
c++11
即可)第三方库
yunteng521
·
2023-12-17 22:38
杂项
c++
websocket
server
wss
epoll
synchronized原理
synchronized具有以下特性(jdk1.8):1.开始时是乐观锁,如果锁冲突频繁,就转换为悲观锁.2.开始是轻量级实现,如果锁被持有的时间较长,就转换为重量级锁.3.实现轻量级锁的时候大概率用到
自旋锁
策略
灰灰快醒醒
·
2023-12-17 21:52
java
开发语言
计算机操作系统4
进程互斥:单标志法true/false、双标志先/后检查法、Pererson..
自旋锁
更适用于多处理机系统,例如这个内核里
程序猿贺不烦
·
2023-12-17 20:47
java
windows
C++11
在算法竞赛中常用语法特征/语法糖
简要总结本人在算法竞赛中遇到的
C++11
的常用特征/语法糖,内容不会很全。初始化列表引入了initializer_list,使用{}的初始化方式称为适用于任何对象初始化的场景。
golemon.
·
2023-12-17 17:17
算法题
c++
算法
数据结构
<JavaEE> 锁进阶 -- synchronized 的锁优化
在初始阶段synchronized是一个乐观锁、轻量级锁、
自旋锁
,随着锁冲突变得更激烈,synchronized会转换为悲观锁、重量级锁、挂起等待锁。与此同时,sync
想听风雨
·
2023-12-17 17:43
JavaEE
java-ee
多线程
C++11
:lambda表达式(对各个参数详细说明+注意事项+使用案例+探究底层)
目录一、lambda表达式语法1.lambda表达式书写格式2.lambda表达式各部分说明3.捕获列表说明二、lambda表达式的一些使用案列1.借助auto将lambda表达式赋值给一个变量来直接调用。2.对于类似于sort对自定义类型排序等情况时使用lambda可简化代码以前我们对自定义类型排序需要写一个函数,或者仿函数来实现比较方法,不太方便学了lambda表达式我们可以这样写三、函数对象
古月_方源
·
2023-12-17 11:41
c++
计算机底层原理
4.1一道面试题:DCL(DoubleCheckLock双重检查锁)单例模式要不要加volatile4.2合并写技术5、程序运行的底层原理6、锁6.1锁的概念6.2synchronized关键字6.2.1
自旋锁
的核心
知之_知之
·
2023-12-17 10:35
计算机底层知识
java
后端
系统安全
操作系统笔记——概论、进程、线程(王道408)
引导虚拟机进程和线程进程和线程基础进程进程状态进程控制进程通信线程线程实现CPU调度调度的层次进程调度细节调度算法评价指标批处理调度算法交互式调度方法同步与互斥基本概念互斥互斥软件实现互斥硬件实现互斥锁(
自旋锁
亦梦亦醒乐逍遥
·
2023-12-17 08:40
计算机体系结构
个人随笔/学习笔记
考研
系统架构
【
C++11
特性篇】盘点
C++11
中三种简化声明的方式【auto】【decltype】【nullptr】(3)
前言大家好吖,欢迎来到YY滴C++系列,热烈欢迎!本章主要内容面向接触过C++的老铁主要内容含:欢迎订阅YY滴C++专栏!更多干货持续更新!以下是传送门!目录一.auto&范围for二.decltype——类型相关【1】typeid()——只能看(打印)类型,但不能用【2】decltype——推出对象的类型后:(1)再定义变量(2)或者作为模板实参三.nullptr——表示空指针一.auto&范围
YY的秘密代码小屋
·
2023-12-17 07:08
YY滴《C++11特性系列》
YY
滴
《C++系列》
c++
java
开发语言
【
C++11
特性篇】利用 { } 初始化(1)
前言大家好吖,欢迎来到YY滴C++系列,热烈欢迎!本章主要内容面向接触过C++的老铁主要内容含:欢迎订阅YY滴C++专栏!更多干货持续更新!以下是传送门!目录一.回顾C++98标准中{}的使用二.一切皆可用{}初始化,并且可以不写=三.区分"初始化列表"和"列表初始化"一.回顾C++98标准中{}的使用在C++98中,标准允许使用花括号{}对数组或者结构体元素进行统一的列表初始值设定。比如:str
YY的秘密代码小屋
·
2023-12-17 07:38
YY
滴
《C++系列》
YY滴《C++11特性系列》
c++
开发语言
【
C++11
特性篇】
C++11
中新增的initializer_list——初始化的小利器(2)
前言大家好吖,欢迎来到YY滴
C++11
系列,热烈欢迎!本章主要内容面向接触过C++的老铁主要内容含:欢迎订阅YY滴C++专栏!更多干货持续更新!以下是传送门!
YY的秘密代码小屋
·
2023-12-17 07:34
YY
滴
《C++系列》
YY滴《C++11特性系列》
c++
list
开发语言
linux 内核同步互斥技术之顺序锁
顺序锁顺序锁区分读者和写者,和读写
自旋锁
相比,它的优点是不会出现写者饿死的情况。读者不会阻塞写者,读者读数据的时候写者可以写数据。
一叶知秋yyds
·
2023-12-17 06:35
linux
linux
算法
运维
c语言
网络
服务器
【C++】
C++11
新特性探索:decltype 和 auto
▒目录▒问题描述环境1️⃣decltype推导变量类型推导函数返回类型2️⃣auto自动推导变量类型迭代器和范围循环3️⃣decltype和auto同时使用结论参考资料问题描述
C++11
引入了一些强大的新特性
夜猫逐梦
·
2023-12-17 04:16
#
C/C++
c++
开发语言
【
C++11
】特殊类设计/类型转换/IO流
一:特殊类设计1.1:设计一个类,不能被拷贝/继承1.2:设计一个类,只能在堆/栈上创建对象1.3:设计一个类,只允许创建一个对象(单例模式)二:类型转换2.1:C语言中的类型转换2.2:C++中的类型转换2.2.1:static_cast2.2.2:reinterpret_cast2.2.3:const_cast2.2.4:dynamic_cast2.3:RTTI三:IO流3.1:C++中的IO
KL4180
·
2023-12-17 02:06
c++
Java 多线程之锁概念理解
、概述二、乐观锁/悲观锁2.1区分乐观锁和悲观锁2.2相关概念三、共享锁/排他锁/读写锁3.1区分共享锁和排他锁3.2读写锁(一种特殊的锁)四、统一锁/分段锁一、概述在多线程编程中,有乐观锁、悲观销、
自旋锁
QIFU
·
2023-12-16 21:34
#
Java
多线程
java
开发语言
多线程
深入理解Java虚拟机---线程安全与锁优化
线程安全与锁优化线程安全的实现方法1.互斥同步2.非阻塞同步3.无同步方案锁优化
自旋锁
与自适应
自旋锁
消除锁粗化轻量级锁偏向锁线程安全的实现方法1.互斥同步互斥同步是一种最常见也是最主要的并发正确性保障手段
kk变色龙13
·
2023-12-16 20:20
java
安全
开发语言
C++11
【初识】
C++11
简介1.在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为
C++11
之前的最新C++标准名称。
niu_sama
·
2023-12-16 19:55
c++
c++
C++11
智能指针
C#和java有自动垃圾回收机制,所以内存管理问题不大,但是C++没有这个机制所以内存管理需要注意。使用智能指针可以解决内存泄漏的问题,智能指针对象中有个指针存储动态创建对象的地址,用于生存期的控制,能确保在智能指针对象离开作用域时自动正确的销毁动态创建的对象,防止内存泄漏。智能指针和裸指针的用法类似,只是可以自动释放分配的内存。裸指针存在的问题:1.难以区分指向的是一个对象还是一组对象2.使用完
Better Sally
·
2023-12-16 18:25
C++
c++
开发语言
[多线程]一篇文章带你看懂Java中的synchronized关键字(线程安全)锁的深入理解
目录1.前言2.synchronized的特性2.1synchronized前言2.2乐观锁和悲观锁2.3重量级锁和轻量级锁重量级锁:轻量级锁:2.4
自旋锁
和挂起等待锁2.5公平锁和非公平锁公平锁:非公平锁
老cu
·
2023-12-16 18:45
java
开发语言
C++标准模板(STL)- 类型支持 (辅助类,具有指定值的指定类型的编译期常量)
辅助类std::integral_constant定义于头文件integral_constant(
C++11
)bool_consta
繁星璀璨G
·
2023-12-16 12:46
C++标准库模板(STL)-
类型支持
c++
标准库模板
运行时类型识别
辅助类
integral_
constant
C/C++ 知识点:类成员初始化方法
一、类成员初始化方法C++支持的类成员初始化方法有:初始化列表、构造函数初始化、声明时初始化(
C++11
后才支持)。
MessiGo
·
2023-12-16 10:55
C/C++
知识点
c++
Java锁机制- - 草稿 - 草稿
可重入锁、可中断锁、公平锁、读写锁、
自旋锁
。锁的相关概念介绍1、可重入锁如果锁具有可重入性,则称为可重入锁,synchronized和reentranLoke都是可重入锁。
我也没想
·
2023-12-16 06:19
C++11
新特性(4):emplace() 和 insert()
98用太久,学习下11,根据网上资料的知识总结。1.区别1.1insert()一次可以插入多个元素,而emplace()每次只能插入一个元素。1.2当插入对象时,emplace()的效率更高。因为emplace()在插入元素时,是在容器的指定位置直接构造元素,而不是先单独生成,再将其复制(或移动)到容器中。因此,建议优先使用emplace()。2.以std::vector为例#includecla
myepicure888
·
2023-12-16 04:58
C++
c++
生产者消费者问题
C++11
多线程入门(10)——生产者消费者问题1、问题描述生产者生产产品并放入“缓冲池”(店铺)中,消费者来到店铺购买产品并且取走。
lusic01
·
2023-12-16 04:28
c++
c++线程同步之条件变量
c++线程同步之条件变量条件变量是
C++11
提供的另外一种用于等待的同步机制,它能阻塞一个或多个线程,直到收到另外一个线程发出的通知或者超时时,才会唤醒当前阻塞的线程。
Liuuuu408
·
2023-12-16 03:19
c++
c++11新特性
c++
开发语言
C++ 11 初识
一.
C++11
的简介在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为
C++11
之前的最新C++标准名称。
云烟梦柳
·
2023-12-16 01:18
c++
开发语言
java
算法
数据结构
C++11
初识(基本面试题)
初识
c++11
(面试基本)lambda函数*文章目录*初识
c++11
(面试基本)lambda函数**前言一、lambda基本组成二、捕获参数部分1.值捕获2.引用捕获3.隐式捕获4.混合方式捕获三、修改捕获参数以及参数的类型
码农_风口的朱
·
2023-12-16 01:44
面试基础
c++
面试
lambda
后端
C++ 11 初识2
一.新的类功能默认成员函数原来C++类中,有6个默认成员函数:构造函数析构函数拷贝构造函数拷贝赋值重载取地址重载const取地址重载
C++11
新增了两个:移动构造函数和移动赋值运算符重载。
云烟梦柳
·
2023-12-16 01:30
c++
java
javascript
算法
开发语言
6.2
C++11
变长模板
一、引入在(
C++11
)之前,我们可以通过C语言提供的变长函数实现一个可以接受任意长度参数列表的求和函数:doublesum(intcount,...)
小黑屋1024
·
2023-12-16 01:57
深入理解C++11新特性
C++11
6.4-6.5
C++11
线程局部存储与快速退出:quick_exit与at_quick_exit
一、线程局部存储线程局部存储(TLS,threadlocalstorage),指的是线程局部存储变量,即拥有线程生命期及线程可见性的变量。常见的全局变量和静态变量对于多线程而言是共享的,我们可以通过这些实现线程间数据传递与交互,但是有时我们并不希望这些变量被多线程共享,比如errno。#include#include#includeusingnamespacestd;interrorCode=0;
小黑屋1024
·
2023-12-16 01:26
深入理解C++11新特性
C++11
Java中的锁分类
介绍的内容如下:公平锁/非公平锁可重入锁独享锁/共享锁互斥锁/读写锁乐观锁/悲观锁分段锁偏向锁/轻量级锁/重量级锁
自旋锁
上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,
小王学java
·
2023-12-16 00:42
atomic包的原理及分析
其基本的特性就是在多线程环境下,当有多个线程同时执行这些类的实例包含的方法时,具有排他性,即当某个线程进入方法,执行其中的指令时,不会被其他线程打断,而别的线程就像
自旋锁
一样,一直等到该方法执行完成,才由
Java架构学习者
·
2023-12-15 15:39
ZLMediaKit学习(一):Window环境下推拉流
该框架基于
C++11
开发,避免使用
Mikite
·
2023-12-15 12:30
原创
学习
linux
运维
linux 内核同步互斥技术之读写
自旋锁
读写
自旋锁
读写
自旋锁
(通常简称读写锁)是对
自旋锁
的改进,区分读者和写者,允许多个读者同时进入临界区,读者和写者互斥,写者和写者互斥。如果读者占有读锁,写者申请写锁的时候自旋等待。
一叶知秋yyds
·
2023-12-15 08:56
linux
linux
运维
服务器
c语言
网络
linux 内核同步互斥技术之
自旋锁
自旋锁
自旋锁
用于处理器之间的互斥,适合保护很短的临界区,并且不允许在临界区睡眠。申请
自旋锁
的时候,如果
自旋锁
被其他处理器占有,本处理器自旋等待(也称为忙等待)。进程、软中断和硬中断都可以使用
自旋锁
。
一叶知秋yyds
·
2023-12-15 08:17
linux
linux
运维
服务器
c语言
网络
c++原子变量
原子变量概述
C++11
提供了一个原子类型std::atomic,通过这个原子类型管理的内部变量就可以称之为原子变量,我们可以给原子类型指定bool、char、int、long、指针等类型作为模板参数(不支持浮点类型和复合类型
Liuuuu408
·
2023-12-15 07:49
c++11新特性
c++
C++11
右值引用
C++11
是继98/03版本之后的大改版,其中增加了许多新特性,得到广泛的应用。这篇文章就介绍其中的右值引用。希望能够解释明白以下三个问题: 1.什么是右值引用? 2.右值引用有什么好处?
加一zZ
·
2023-12-15 05:09
C++学习之路
c++
开发语言
string转int函数(stoi)
stoi的优势在于它是
C++11
标准引入的新函数,它能更好地处理异常情况。
美丽的欣情
·
2023-12-14 23:53
C++学习
c++
C++11
(下)
可变参数模板
C++11
的新特性可变参数模板能够创建可以接受可变参数的函数模板和类模板.相比C++98/03,类模版和函数模版中只能含固定数量的模版参数,可变模版参数无疑是一个巨大的改进,然而由于可变模版参数比较抽象
萤火夜
·
2023-12-14 20:33
c++
常用的线程锁
自旋锁
(SpinLock)当线程
djykkkkkk
·
2023-12-14 20:30
系统安全
C++11
可变参数模板
文章目录前言正文C语言中的可变参数宏C++中的可变参数模板代码刨析终前言模板是C++的一个重要特性,其中,可变参数模板更是重中之重,我们学习模板一定会学习可变参数模板。首先,我们先要了解可变参数模板的目的是什么:可变参数模板是为了解决函数或类模板无法处理或限制参数数量,类型和形参的问题而引入的一个新特性。它允许模板参数数量不确定,使得我们可以传递任意数量和类型的参数,从而更加灵活和通用。正文本文的
默示MoS
·
2023-12-06 17:14
C++
初学者
玩转C++
c++
开发语言
C++11
多线程基本知识点
进程和线程的概念在Windows中提出了线程的概念,后来Linux进行了引入,但是Linux内核中并没有线程,即:Linux没有实际上的线程,Linux中的线程实际上仍是进程,但是它达成了和Windows中相同的效果。进程和线程的区别进程拥有自己独立的地址空间,多个线程共用一个地址空间线程更加节省资源,效率不仅可以保持,而且能够更高在一个地址空间中多个线程独享:每个线程都有属于自己的栈区、寄存器在
默示MoS
·
2023-12-06 17:41
玩转C++
c++
C++11
新特性(上)
一、
C++11
简介相比C++98/03,
C++11
则带来了数量可观的变化,其中包含了约140个新特性,以及对C++03标准中约600个缺陷的修正,这使得
C++11
更像是从C++98/03中孕育出的一种新语言
chen_ever
·
2023-12-06 15:11
c++
开发语言
【C++】atomic原子操作
std::atomic文章目录std::atomic构造函数is_lock_free函数std::atomic_flagatomic_flag实现原子锁atomic_flag实现
自旋锁
store函数内存模型
十字星的约定_
·
2023-12-06 14:53
c++
c++
c语言
开发语言
C++委员会决定在C++20中弃用原始指针
可能开发人员都没有赶上
C++11
/14标准,C++17就发布了。现在又是时候准备C++20了。
现在_未来
·
2023-12-06 14:00
C++11
学习----lambda表达式,function包装器,bind绑定
目录一,lambda表达式1.lambda表达式简介2lambda表达式的五个部分3.lambda表达式的使用4.lambda表达式的类型5,lambda表达式的本质二,function包装器1,function简介2.为什么要包装可调用对象3.使用三,bind绑定器一,lambda表达式1.lambda表达式简介lambda表达式的书写格式如下:[capture-list](parameters
Niu_brave
·
2023-12-06 12:01
C++基础
学习
学习笔记
c++
上一页
13
14
15
16
17
18
19
20
下一页
按字母分类:
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
其他