自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 智能指针-你需要懂的东西

智能指针通过栈对象自动析构的特性实现资源自动释放,其核心原理是将资源释放操作放在析构函数中。基本实现包括解引用和指向运算符重载。智能指针面临两大问题:浅拷贝导致的野指针问题和循环引用问题。解决方案包括禁止拷贝构造(auto_ptr/scope_ptr)、使用右值引用(unique_ptr)和引用计数(shared_ptr)。其中shared_ptr通过引用计数实现资源管理,但存在循环引用问题,需配合weak_ptr解决。此外,shared_ptr线程不安全但引用计数原子操作安全,且推荐使用make_shar

2025-08-09 22:05:33 642

原创 数据库连接池的原理与实现

只要是xx池,都是为了避免资源的重复创建和销毁,从而提高程序的效率。比如:数据库连接池:避免频繁的数据库连接的创建,断开线程池:避免线程的频繁,销毁内存池:避免频繁new ,delete套接字连接池:避免客户端与服务器的频繁连接与断开池子的原理是将“创建对象”用一个容器管理起来,然后以进出容器的成本代替创建销毁的成本。

2025-07-23 10:34:07 684

原创 条件变量与线程同步

如果说是两个线程12间的同步,那么条件变量和互斥锁是一样的,二者都是通过阻塞线程2实现线程1对共享资源的独占,当线程1执行完后,互斥锁:释放锁,线程2加锁访问共享资源;生产者消费者模型的核心是任务队列,简单的话,一个队列就实现了,复杂的话,class+STL容器,因为STL容器适合作为任务队列的数据结构,一方面有方便快捷的api,另一方面,大小是动态变化的。他们是两个类,通过类的实例化对象作为条件变量,在一个线程方法中,执行条件变量的阻塞方法,那么条件变量内部将会记录被阻塞线程的ID。二者有着本质的不同。

2025-07-22 21:04:47 691

原创 使用C++操作MySQL

本文介绍了使用C++连接MySQL数据库的方法。主要内容包括:1)配置C++开发环境,添加必要的MySQL头文件和库文件;2)使用MySQL C API进行数据库连接、SQL查询和结果处理;3)演示了数据库操作的完整流程,包括初始化连接、执行SQL语句和关闭连接;4)提出将这些操作封装成MysqlConn类的方法,实现连接管理、查询处理和事务控制等功能。文章还提供了相关的视频教程和代码参考资源链接,帮助开发者快速实现C++与MySQL数据库的交互功能。

2025-07-22 11:01:55 346

原创 gRPC的理解与基本使用

只不过写法上有略微差异;而客户端就要。

2025-07-17 11:14:37 392

原创 pytorch_小土堆听课笔记

以创建图片数据集为例,创建dataset的核心在于将图片文件夹转换为list类型,每个图片都是列表中的一个元素,因为转换为list类型,方便取值操作。本笔记是根据b站up“小土堆”的pytorch教程所作,笔记是根据自身的理解做的,并没有完全照搬教程内容,因此可能会与原教程有所出入。vgg16是模型,vgg16_method1.pth是保存的模型文件(一般常见的是以.pth结尾的)导入模块的过程,就是将模块文件下的函数列举在了本文件中,因此函数可以直接调用。F是面向过程的写法,class是面向过程的写法。

2023-12-09 21:28:35 188 1

原创 pytorch精简版笔记

一种是在init中构造单个工具,供forward一个一个调用工具一种是在init中构造工具集合,供forward统一调用(调用工具集合)

2023-12-08 17:16:03 129

原创 Anaconda环境管理

一般我们往往会在一个主机上运行多个由别人写的项目,而别人写的项目所用的开发环境又有很大的不同,比如A项目用的是Python3.6,B项目用的是Python3.7。很多时候一个项目必须在特定的环境下才能运行,而我们又不能每次运行一个项目,就把原来的环境给卸载掉,那样就太麻烦了。而且配环境这个过程其实也并不轻松。而且多个项目也不能并行运行,基于此,出现了Anaconda,一个环境管理工具,可以利用Anaconda来管理多个环境,也就是说在一台主机上,同时具有多个环境。

2023-10-02 23:37:05 455 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除