- 博客(22)
- 收藏
- 关注
原创 自定义实现日志类
实现一个格式为日志内容的日志类最终目的就是将该日志打印在屏幕上或者文件中,在代码中添加日志功能可以帮助跟踪程序执行过程、调试问题以及记录关键操作。
2025-04-19 19:39:57
885
原创 理解并运用Linux线程
线程在多任务处理中扮演着核心角色,它通过轻量级的资源占用和高效的上下文切换,显著提升了系统的并发性能。本文将介绍Linux中线程如何实现,线程的作用,以及如何使用POSIX线程完成任务。
2025-04-01 21:43:50
1074
原创 Linux实现线程池
线程池是一种并发编程模式,它维护一组预先创建的线程,用于执行多个任务,避免了每次有新任务就去创建线程和销毁线程的开销。线程池就是负责任务与线程的匹配,线程池的核心思路是通过预先创建并管理一组线程,以高效执行大量短期任务,避免频繁创建和销毁线程的开销,提前创建固定数量的线程并保持活跃,任务到来时直接分配,当你有新的任务产生,并需要线程执行的时候,线程池将负责自动将传入的任务与线程进行匹配。同时线程池将任务提交与任务执行分离,提交者只需关注任务内容,线程池负责调度和执行,实现解耦。
2025-04-01 21:43:20
393
原创 Linux信号:进程间通信的神秘使者
信号(Signal) 是一种进程间通信(IPC)机制,用于通知进程发生了某种事件。信号是异步的,意味着它可以在任何时候发送给进程,而进程不需要主动等待信号的到来
2025-02-28 18:16:48
717
原创 动态内存函数易错例题详解
首先本文中所讲述的例题皆来自于《高质量 C++/C 编程指南》这本书中。这本书中包含了很多C/C++中的陷阱和编程规则,读完这本书之后,相信你会对C/C++有了一个新的认识。
2022-10-04 20:59:40
129
原创 不同数据类型在32位64位系统中存储
由于本人经常弄混指针变量和其他数据类型在32位和64位中存储的区别,所以写一篇博客方便以后弄清楚。地址(即指针变量):8byte(与32位不同)long: 8byte(与32位不同)
2022-09-27 18:12:26
344
原创 自定义类型之结构体详解
首先c语言中内置类型很多包括int,float,char,double,short等等,但是实际生活中有很多对象是无法用一种内置类型来描述的,比如描述中学生,一个学生首先是姓名,接着有班级,专业和学号,这里我们就需要从四个方面去描述,所以我们需要创建一个自定义类型来包含用于描述的四个变量。本文讲解的是自定义类型之一,结构体。
2022-09-20 17:13:00
751
原创 内存函数memcpy,memmove详解
内存函数的作用是什么,为什么我们需要内存函数首先大家都知道字符串操作函数例如:strstr,strlen,strcpy,字符串操作函数包含在头文件string.h中,而内存函数也包含在头文件string.h中,那为什么我们有了strncpy还需要memcpy呢,内存函数是以字节为单位改变内存里存储的值,直接访问地址,不会要求参数数据类型,比strncpy范围更广。
2022-09-15 12:07:48
845
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人