- 博客(10)
- 收藏
- 关注
原创 Linux网络编程 I/O复用 定时器
本文介绍了Linux信号机制与定时器相关内容。信号是进程间通信的一种方式,用于通知目标进程状态变化或系统异常。Linux提供了kill()等信号发送函数,以及signal()和sigaction()等信号处理函数,支持自定义信号处理方式。信号集使用sigset_t结构体管理,可通过掩码控制信号接收。在网络编程中,SIGHUP、SIGPIPE等信号具有特殊作用。定时器方面,文章介绍了三种实现方法:socket选项设置超时、SIGALRM信号定时以及升序链表定时器管理。后者结合I/O复用机制,可高效处理多个定时
2025-11-02 17:58:29
648
原创 Linux网络编程
本文介绍了Linux系统下的高级I/O函数和服务器的规范化管理。主要内容包括:1)进程通信的pipe函数和sockpair函数;2)文件描述符操作的dup/dup2、readv/writev、sendfile等函数;3)内存管理的mmap/munmap函数;4)服务器日志管理相关的syslog函数;5)用户信息、进程组和会话管理;6)服务器后台化实现方法,包括fork、setsid等关键步骤。这些技术为Linux服务器程序开发提供了基础的I/O操作和进程管理手段,是构建稳定高效服务器的重要基础。
2025-10-19 16:20:52
370
原创 Linux网络编程
本文介绍了网络编程中的基础API,主要包括: 字节序转换函数和socket地址结构体,说明主机字节序和网络字节序的区别及转换方法; socket创建、绑定、监听、连接等操作流程,详细说明各函数参数和用法; TCP/UDP数据读写函数,包括recv/send和recvfrom/sendto; 其他辅助函数如获取socket地址、设置选项等; 网络信息查询API,包括通过域名/IP获取主机信息和通过端口获取服务信息。这些API为网络编程提供了基础功能支持。
2025-10-11 09:49:28
357
原创 算法学习记录
上面这些题都是使用hash表来实现,要么是使用set,要么是map。当然也可以自己使用数组来实现一个hash表,如字母异位中,创建一个容积26的数组,通过编码将字母存入,以字母表中是顺序为索引,数量为值。而对于快乐数,它和链表中的环形链表十分相似,因此可以通过快慢指针的方法实现它。而在两数之和中,使用unordered_map比使用map效率更高,set也是如此。
2025-08-11 11:18:11
201
原创 算法学习记录
本文记录了链表相关算法学习内容,包括删除元素、翻转链表和创建链表三个主要题目。删除元素介绍了虚拟头节点和递归两种解法;翻转链表展示了头插法、双指针法和递归三种实现方式;创建链表重点讲解了边界条件处理和头节点初始化。文章通过具体代码示例,详细说明了每种解法的实现思路和注意事项,特别是递归方法的调用关系分析。这些算法练习有助于深入理解链表操作的基本原理和实现技巧。
2025-08-08 15:59:19
166
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅