自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 内存分配概念详解

**堆分配** | 堆(动态区) | 运行时通过`new`/`delete`或`malloc()` | 灵活,手动管理,易出现错误 || **栈分配** | 栈(调用栈) | 编译器自动管理(局部变量) | 快速,生命周期与函数相同 || **静态分配** | 数据段、BSS段 | 编译时确定(静态或全局变量) | 生命周期长,自动管理 |它是计算机程序设计中非常重要的一个环节。

2025-07-12 10:00:58 864

原创 数据结构-栈

**`push`**: 创建新节点,将新节点指向当前 `head` (栈顶),然后更新 `head` 指向新节点。* **`isEmpty`**: 判断 `head` 是否为 `nullptr` (或 `NULL`)。* **`pop`:** 返回 `top` 指针指向的元素,然后减少 `top` 指针。* **`peek`:** 返回 `top` 指针指向的元素,不改变 `top`。* **`peek`**: 返回 `head` 的数据,不改变 `head`。

2025-07-08 18:26:14 915

原创 数据结构-链表

**删除指定节点 (Delete a specific node)**:遍历链表找到要删除节点的前一个节点,修改其 `next` 指针,跳过要删除的节点。* **在链表头部插入 (Insert at the beginning)**:创建一个新节点,使其 `next` 指向原头节点,然后更新头节点指向这个新节点。数组的随机访问速度是O(1),而链表是O(n)。6. **`deleteAt(int index)` (删除):** 根据索引找到要删除的节点的前一个节点,修改指针实现删除。

2025-07-08 18:14:30 858

原创 构建线程安全队列

提供了一种简单而有效的线程安全队列实现。它使用互斥锁保护共享数据,使用条件变量实现线程间的同步。理解其原理以及如何使用lock_guard和等工具是编写线程安全 C++ 代码的基础。正确使用线程安全队列,可以大大简化多线程程序的开发,减少数据竞争和潜在的错误,从而提高程序的可靠性和效率。这个线程安全的队列是多线程编程中一个非常重要的工具。通过理解其实现细节,你可以更好地利用它来构建健壮的多线程应用程序。

2025-07-08 11:31:17 888

原创 套接字重用setsockopt函数

套接字描述符 (socket descriptor)。这是一个整数,代表先前通过。指向的选项值的大小,以字节为单位。这是非常重要的,必须正确指定。要设置的选项的名称。例如,对于布尔类型的选项 (如。可能会导致错误的结果或程序崩溃。函数的操作直接针对这个套接字。指向要设置的选项值的指针。系统调用创建的套接字。

2025-07-08 11:21:20 343

原创 线程池的实现

但在使用线程池时,需要根据具体的应用场景和需求来合理配置线程池的参数,以充分发挥线程池的优势并避免潜在的问题。任务队列可以缓冲任务,当线程池中的线程空闲时,可以从任务队列中取出任务执行,实现任务的异步执行和平衡负载。线程池会根据任务的多少去动态变换线程的个数,当然,线程池中也会有一定的空闲线程来应对随时到来的任务,线程池的编写可以极大程度的对资源的充分利用,同时也可以较少线程的频繁创建销毁的开销.调试和排错难度增加:由于线程池中的线程是复用的,任务的执行可能会受到其他任务的影响。

2023-12-26 19:00:42 877

原创 linux子进程运行播放器播放,父进程从argv[1]读到的音乐文件

内容为上课内容,如有错误,还望大神指点!!!!

2023-12-10 18:05:31 118

空空如也

空空如也

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

TA关注的人

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