logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

一步一步写线程之五线程池的模型之二半同步半异步模型

在目前可预见的技术范围内,完全无锁的可能性几乎是零,而且相对于有锁编程,无锁编程的要件有点多,这也导致无锁编程更多的应用于基础层。而且大多的应用场景其实对于效率的敏感性并没有到不可忍受的地步,所以这也是HA/HS应用非常广泛的原因。大家可以看看这篇文章“An Architectural Pattern for Efficient and Well-structured Concurrent I/O

文章图片
#c++
一步一步写线程之五线程池的模型之一领导者追随者模型

学习理论就是学习别人抽象出来的知识,然后再把学习到的知识理论应用到自己的工作中。如此往复循环,慢慢就会对这些知识有了更深刻的理解,也就可以在此基础上自己抽象自己的理论和知识体系来指导自己的实际工作。武林中不是有一句话:“练拳不练功,到老一场空;练功不练拳,到老也枉然!计算技术亦是如此。

文章图片
#c++#设计模式
多核和多CPU编程——并行计算的加速比

一、并行计算的衡量并行计算和串行计算到底哪个好,或者说并行计算中哪个优哪个劣?这需要有一些衡量的标准:通过上述的参数的对比,可以在整体上有一个性能的参考。二、加速比(Speedup)加速比就是指并行计算比传统的串行执行速度提高了多少倍。即:加速比(Sn)=单处理器最优算法串行时间/多核并行计算时间它涉及到两个定律:1、Amdahl定律Gene Amdahl于1967年提出了这个定律,用于在并行计算

#c++
跟我学C++中级篇——STL的容器Array

一、顺序容器ArraySTL中的Array数组类型是在c++ TR1中才提出的,在之前只有Vector这个类似于数组的类型。但在实际应用中发现,vector和实际应用数组还是有非常大的区别,包括迭代器访问的控制,内存大小的控制等。用过vector的很容易发现它和实际使用中的数组的诸多不同之处。换句话说,实际开发过程中,还是需要一个和数组高度类似的数据类型,这也是std::array的出现的一个原因

#c++
跟我学c++中级篇——静态(全局)变量初始化依赖

一、问题的现象实际的项目代码中遇到一个很疑惑的问题,问题可以描述为:一个静态成员初始化的时候直接core掉,该静态成员初始化时通过另外一个文件中静态成员来完成。该问题同样发生在全局对象上。具体可以用代码简述如下://test1.cpp#include<string>std::stringa="test";//test2.cpp#include<iostream>extern

#c++
希尔伯特和包络变换

对这些信号处理是基础入门,有些名词和算法不太清楚,所以找了些资料进行入门,学习一下信号的基础定义。实际的工作场景中有时会遇到,不求学得多深,只要一些基础的应用能看得明白即可。小白入门,可能有谬误之处,大家共同讨论进步。

#算法
DPDK系列之二DPDK编译

对DPDK的编译及出现的错误,注意事项进行分步说明

#linux#服务器
C++20中的三路比较运算符

一、operator<=>三路比较运算符也是一个c++20新提供的一个功能,网上有的人叫“航天飞机运算符”也有的叫“宇宙飞船运算符”,知道啥意思就行。在以前的c++编程中,实现基本类型的比较功能是由标准语法直接提供的,但在实际的编程中,经常会遇到这样一些问题,封装好的对象(类和结构体对象)也会出现一些比较的要求,这时候儿,一般会通过重载某个运算符来实现特定的对象的比较。而在c++20中

#c++
c++23中的新功能之十二格式化输出

说起格式化输出那真是一言难尽,从汇编到C,到c++,到c#、Java、Python、Go…哪个不是各出手段,尽显风骚。搞c++开发的,好多人其实用的不外乎是printf。可是这个函数有个致命的问题,它只能打印他自己能玩儿的东西,想换个他不知道的,好,做梦吧。而c++在后来也觉得它用着不爽,毕竟我是带类的C,你不能打印类,那不等于大多数的工作没法完成。没办法,只好自己搞了个流式输入输出,重载一下op

文章图片
#c++23
跟我学c++中级篇—c++11时间库实现定时器和延时

这里面有一疑问的可以看一下下面的程序,对sleep_for和sleep_until的使用是延时和定时器的主要方式,它们都是延时,一个到点,一个停止一段。有的资料说sleep_for会导致整个进程的所有线程阻塞,但在标准文档写的是当前线程阻塞,下面的代码就可以验证是哪种。//sleep(1);i < 10;t1.join();t3.join();return 0;

文章图片
#c++
    共 18 条
  • 1
  • 2
  • 请选择