<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chenmi123321的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/chenmi123321</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; chenmi123321]]></copyright><item><title><![CDATA[leetgpu]]></title><link>https://blog.csdn.net/chenmi123321/article/details/152098544</link><guid>https://blog.csdn.net/chenmi123321/article/details/152098544</guid><author>chenmi123321</author><pubDate>Fri, 26 Sep 2025 00:43:26 +0800</pubDate><description><![CDATA[/ 每个线程块使用16x16的线程布局，这是一个在GPU上表现良好的配置。// 计算所需的线程块数量，确保所有元素都能被处理。// 计算当前线程负责的C矩阵元素的行和列。// 计算当前线程的全局索引。]]></description><category></category></item><item><title><![CDATA[C++无锁队列]]></title><link>https://blog.csdn.net/chenmi123321/article/details/146142288</link><guid>https://blog.csdn.net/chenmi123321/article/details/146142288</guid><author>chenmi123321</author><pubDate>Mon, 10 Mar 2025 01:28:47 +0800</pubDate><description><![CDATA[无锁队列（Lock-Free Queue）是一种在多线程环境下实现的队列数据结构，它不依赖传统的锁机制（如互斥锁 std::mutex）来保证线程安全。而是通过原子操作（如 std::atomic 提供的操作）和内存屏障来确保多个线程可以同时对队列进行入队（enqueue）和出队（dequeue）操作，且不会出现数据竞争和不一致的问题。]]></description><category></category></item><item><title><![CDATA[DeepSeek本地部署教程]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145602106</link><guid>https://blog.csdn.net/chenmi123321/article/details/145602106</guid><author>chenmi123321</author><pubDate>Thu, 13 Feb 2025 01:20:50 +0800</pubDate><description><![CDATA[DeepSeek本地部署教程]]></description><category></category></item><item><title><![CDATA[手写图-邻接表]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562180</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562180</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 03:05:14 +0800</pubDate><description><![CDATA[下面是一个完整的C++实现手写邻接表表示图的代码。邻接表是一种常见的图的表示方法，其中每个顶点维护一个链表，链表中存储与该顶点直接相连的其他顶点。]]></description><category></category></item><item><title><![CDATA[手写图-邻接矩阵]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562152</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562152</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 03:01:39 +0800</pubDate><description><![CDATA[下面是一个完整的C++实现手写邻接矩阵表示图的代码。邻接矩阵是一种常见的图的表示方法，其中矩阵的行和列分别代表图中的顶点，矩阵中的值表示顶点之间是否存在边。]]></description><category></category></item><item><title><![CDATA[手写平衡二叉树 (AVL树)]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562124</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562124</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 02:53:29 +0800</pubDate><description><![CDATA[下面是一个完整的C++实现手写平衡二叉树（AVL树）的代码。AVL树是一种自平衡二叉搜索树，其中每个节点的左右子树高度差不超过1。]]></description><category></category></item><item><title><![CDATA[手写二叉搜索树 (BST)]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562107</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562107</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 02:47:52 +0800</pubDate><description><![CDATA[下面是一个完整的C++实现手写二叉搜索树（BST）的代码。二叉搜索树是一种二叉树，其中每个节点的左子树包含的值小于该节点的值，右子树包含的值大于该节点的值。]]></description><category></category></item><item><title><![CDATA[手写最大堆]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562095</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562095</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 02:43:55 +0800</pubDate><description><![CDATA[下面是一个完整的C++实现手写最大堆的代码。最大堆是一种完全二叉树，其中每个节点的值都大于或等于其子节点的值。]]></description><category></category></item><item><title><![CDATA[手写最小堆]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562077</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562077</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 02:41:03 +0800</pubDate><description><![CDATA[下面是一个完整的C++实现手写最小堆的代码。最小堆是一种完全二叉树，其中每个节点的值都小于或等于其子节点的值。]]></description><category></category></item><item><title><![CDATA[手写哈希表]]></title><link>https://blog.csdn.net/chenmi123321/article/details/145562067</link><guid>https://blog.csdn.net/chenmi123321/article/details/145562067</guid><author>chenmi123321</author><pubDate>Tue, 11 Feb 2025 02:36:46 +0800</pubDate><description><![CDATA[下面是一个简单的C++实现手写哈希表的完整代码。这个哈希表使用链地址法（Chaining）来处理哈希冲突。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程async]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144462855</link><guid>https://blog.csdn.net/chenmi123321/article/details/144462855</guid><author>chenmi123321</author><pubDate>Sat, 14 Dec 2024 02:36:37 +0800</pubDate><description><![CDATA[强制在新线程中异步执行。延迟执行，直到调用 get 或 wait。由实现决定是否创建新线程或延迟执行。要执行的函数。函数的参数。std::async是更高层次上的异步操作，它的存在可以使开发者不用关注线程创建内部细节，就能方便的获取异步执行状态和结果，还可以指定线程创建策略，应该用std::async替代线程的创建，让它成为做异步操作的首选。使线程的创建变得非常简单，还可以获取线程id等信息。std::mutex。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程std::future]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144439565</link><guid>https://blog.csdn.net/chenmi123321/article/details/144439565</guid><author>chenmi123321</author><pubDate>Fri, 13 Dec 2024 01:32:41 +0800</pubDate><description><![CDATA[std::future 是 C++11 引入的标准库中的一种模板类，用于实现线程间的异步操作结果的获取。它是标准库  中的一部分，配合 std::async、std::promise 等工具使用。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程condition_variable]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144439445</link><guid>https://blog.csdn.net/chenmi123321/article/details/144439445</guid><author>chenmi123321</author><pubDate>Fri, 13 Dec 2024 01:15:35 +0800</pubDate><description><![CDATA[std::condition_variable 是 C++ 标准库中的同步机制，用于线程间的通信和协作，主要用来让一个线程等待某个条件发生（通常是由其他线程通知）。它是基于信号量的高级封装，配合互斥锁（std::mutex）和条件标志（通常是布尔值或其他标志变量）一起使用。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程volatile]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144439359</link><guid>https://blog.csdn.net/chenmi123321/article/details/144439359</guid><author>chenmi123321</author><pubDate>Fri, 13 Dec 2024 00:45:23 +0800</pubDate><description><![CDATA[volatile关键字用于声明一个变量可能被外部事件（如硬件中断、另一个线程等）修改。通常用于嵌入式编程和多线程编程中。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程std::call_once]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144387840</link><guid>https://blog.csdn.net/chenmi123321/article/details/144387840</guid><author>chenmi123321</author><pubDate>Wed, 11 Dec 2024 01:40:27 +0800</pubDate><description><![CDATA[std::call_once 是 C++11 标准引入的一种工具，用于确保某段代码只被执行一次，通常用于实现线程安全的单例模式或初始化操作。它结合了 std::once_flag 使用。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程std::atomic]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144387786</link><guid>https://blog.csdn.net/chenmi123321/article/details/144387786</guid><author>chenmi123321</author><pubDate>Wed, 11 Dec 2024 01:30:49 +0800</pubDate><description><![CDATA[定义一个初始值为 0 的原子整型变量。]]></description><category></category></item><item><title><![CDATA[C++ 强制类型转换]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144387606</link><guid>https://blog.csdn.net/chenmi123321/article/details/144387606</guid><author>chenmi123321</author><pubDate>Wed, 11 Dec 2024 01:17:47 +0800</pubDate><description><![CDATA[强制类型转换用于转换不同数据类型之间的数据，例如从整型到浮点型，或者从基类指针到派生类指针等。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程std::lock]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144361017</link><guid>https://blog.csdn.net/chenmi123321/article/details/144361017</guid><author>chenmi123321</author><pubDate>Tue, 10 Dec 2024 00:53:01 +0800</pubDate><description><![CDATA[std::lock 是 C++ 标准库中的一个工具函数，用于同时锁定多个锁对象（通常是 std::mutex 或 std::unique_lock），以避免死锁问题。std::lock 位于头文件  中，定义如下：
功能

它采用了一种算法（如 层次锁排序算法），确保在锁定多个互斥量时不会发生死锁。
该函数会尝试锁定提供的所有锁对象（以 不可中断的方式），直到全部成功。
支持任意数量的锁，至少需要两个。

std::lock参考代码
以下是一个完整的代码示例，展示如何使用 std::lock 来同时锁定两个]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程std::mutex]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144360698</link><guid>https://blog.csdn.net/chenmi123321/article/details/144360698</guid><author>chenmi123321</author><pubDate>Tue, 10 Dec 2024 00:17:40 +0800</pubDate><description><![CDATA[std::mutex 是 C++ 标准库提供的一种用于多线程编程的互斥量（mutex）。它定义在头文件  中，主要用于保护共享数据，防止多个线程同时访问而引发数据竞争。]]></description><category></category></item><item><title><![CDATA[C++11新特性之线程std::thread]]></title><link>https://blog.csdn.net/chenmi123321/article/details/144360036</link><guid>https://blog.csdn.net/chenmi123321/article/details/144360036</guid><author>chenmi123321</author><pubDate>Mon, 09 Dec 2024 23:57:36 +0800</pubDate><description><![CDATA[是C++11引入的标准库类，用于创建和管理线程。通过std::thread，程序可以并发执行多个任务，从而提高效率。]]></description><category></category></item></channel></rss>