Windows程序性能分析及改善工具

发布时间:2023-01-18  栏目:AI应用领域, C++, VideoConference, 元宇宙, 工程部署, 软件、框架及系统  评论:0 Comments

Windows Performance Analyzer | Microsoft Learn

std::atomic原子变量

发布时间:2022-07-12  栏目:C++  评论:0 Comments

使用原子操作来控制线程顺序,可以实现一个类似于互斥锁这么一个概念 每个 std::atomic 模板的实例化和全特化定义一个原子类型。若一个线程写入原子对象,同时另一线程从它读取,则行为良好定义。   原子操作std::atomic与互斥量的区别 1)...

intrusive_ptr

发布时间:2022-05-27  栏目:C++  评论:0 Comments

内存管理:侵入式智能指针分析 – 知乎 (zhihu.com)

协程及其优点

发布时间:2022-03-18  栏目:C++, Linux, Windows, 软件、框架及系统  评论:0 Comments

我们都知道多线程,当需要同时执行多项任务的时候,就会采用多线程并发执行。 我们知道操作系统在线程等待IO的时候,会阻塞当前线程,切换到其它线程,这样在当前线程等待IO的过程中,其它线程可以继续执行。当系统线程较少的时候没有什么问题,...

二分图匹配

发布时间:2022-03-18  栏目:C++, 软件、框架及系统, 软件算法  评论:0 Comments

给定一个二分图G,在G的一个子图M中,M的边集{E}中的任意两条边都不依附于同一个顶点,则称M是一个匹配。 极大匹配(Maximal Matching)是指在当前已完成的匹配下,无法再通过增加未完成匹配的边的方式来增加匹配的边数。最大匹配(maximum matching...

C++11 std::shared_ptr

发布时间:2022-03-10  栏目:C++, 软件、框架及系统  评论:0 Comments

shared_ptr是一种智能指针(smart pointer),作用有如同指针,但会记录有多少个shared_ptrs共同指向一个对象。这便是所谓的引用计数(reference counting)。 一旦最后一个这样的指针被销毁,也就是一旦某个对象的引用计数变为0,这个对象会被...

COM组件

发布时间:2022-02-22  栏目:C++, Windows, 工程部署, 软件、框架及系统, 软件接口  评论:0 Comments

COM component(COM组件)是微软公司为了计算机工业的软件生产更加符合人类的行为方式开发的一种新的软件开发技术。在COM构架下,人们可以开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成复杂的应用系统。由此带来的好处是多...

GTest

发布时间:2022-02-06  栏目:C++, Linux, Windows, 工程部署, 软件、框架及系统  评论:0 Comments

gtest是一个跨平台的(Liunx、Mac OS X、Windows、Cygwin、Windows CE and Symbian)C++单元测试框架,由google公司发布。gtest是为在不同平台上为编写C++测试而生成的。它提供了丰富的断言、致命和非致命判断、参数化、”死亡测试”等等。   &...

C++ Mutex & 条件变量(Condition Variable)

发布时间:2022-01-30  栏目:C++  评论:0 Comments

条件变量(Condition Variable)是在多线程程序中用来实现“等待->唤醒”逻辑常用的方法。 可以令多个threads 等在同一变量,并在适当的条件下唤醒。 conditions variable 主要提供了两个函数,wait(lock, predicate )和notify_all()。

托管代码

发布时间:2022-01-29  栏目:C++, Java, Windows, 工程部署, 软件、框架及系统, 软件安全, 软件接口  评论:0 Comments

托管代码就是执行过程交由运行时管理的代码。 在这种情况下,相关的运行时称为公共语言运行时 (CLR)。 BTW, CLI是命令行接口,不要搞混了。   CLR 负责提取托管代码、将其编译成机器代码,然后执行它。 除此之外,运行时还提供多个重要服...

cMake笔记

发布时间:2022-01-19  栏目:C++, Windows, 工程部署, 软件、框架及系统  评论:0 Comments

list 列表操作命令: 1、 list(LENGTH <list> <output variable>) 2、 list(GET <list> <element index> [<element index> …] <output variable>) 3、 list(APPEND <list> <element> [&l...

#pragma once

发布时间:2022-01-19  栏目:C++, Windows, 工程部署, 软件、框架及系统  评论:0 Comments

#pragma once是一个比较常用的C/C++预处理指令,只要在头文件的最开始加入这条预处理指令,就能够保证头文件只被编译一次。   #pragma once是编译器相关的,有的编译器支持,有的编译器不支持,具体情况请查看编译器API文档,不过大部分编...

NuGet

发布时间:2022-01-18  栏目:C++, Windows, 工程部署, 软件、框架及系统  评论:0 Comments

主页:NuGet Gallery | Home NuGet(读作New Get)是用于微软.NET开发平台的软件包管理器,是一个Visual Studio的扩展。在使用Visual Studio开发基于.NET Framework的应用时,NuGet能够令你在项目中添加、移除和更新引用的工作变得更加快捷方便...

Media Foundation

发布时间:2021-12-02  栏目:C++, Windows, 软件、框架及系统  评论:0 Comments

Media Foundation是微软在Windows Vista上推出的新一代多媒体应用库,目的是提供Windows平台一个统一的多媒体影音解决方案,开发者可以通过Media Foundation播放视频或声音文件、进行多媒体文件格式转码,或者将一连串图片编码为视频等等。 Medi...

内存错误

发布时间:2021-10-09  栏目:C++, Linux  评论:0 Comments

我们经常会发现有两种内存转储(core dump) 一种是段错误(segment error)通常是在一个非法的地址上进行取值赋值操作造成。 一种是总线错误(bus error)通常是指针强制转换,导致CPU读取数据违反了一定的总线规则。

C++ lambda表达式

发布时间:2021-08-15  栏目:C++  评论:0 Comments

lambda表达式是C++11中引入的,lambda表达式又称匿名函数Anonymous function,其构造了一个可以在其作用范围内捕获变量的函数对象。通常它作为一个参数传递给接收函数指针或者函数符的函数使用。在C++的STL算法使用过程中,经常可以看到它的身影...

相册集

pix pix pix pix pix pix

关于自己

杨文龙,微软Principal Engineering Manager, 曾在各家公司担任影像技术资深总监、数据科学团队资深经理、ADAS算法总监、资深深度学习工程师等职位,热爱创新发明,专注于人工智能、深度学习、图像处理、机器学习、算法、自然语言处理及软件等领域,目前发明有国际专利19篇,中国专利28篇。

联系我

个人技术笔记

290125097@qq.com

2015 in Shanghai