![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
C/C++
Amazing9
这个作者很懒,什么都没留下…
展开
-
lighttpd cgi不能重启
lighttpd cgi不能重启原创 2024-06-20 14:49:51 · 429 阅读 · 0 评论 -
无符号整数转换为点分十进制IP地址
无符号整数转换为点分十进制IP地址原创 2023-02-22 10:55:01 · 351 阅读 · 0 评论 -
通过STDIN_FILENO向后台运行的程序传递数据
1. 背景有一个后台运行的程序,需要向它的标准输入传递数据。2. 原理在Linux系统中,出socket之外的fd均可用read/write来对其进行读写操作。3. 实例#include <stdio.h>#include <signal.h>#include <unistd.h>#include <errno.h>#include <string.h>#include <sys/types.h>#in原创 2022-02-26 16:57:11 · 326 阅读 · 0 评论 -
fork实现popen
log模块#include <stdarg.h>#include <sys/types.h>#include <sys/wait.h>#include <sys/syscall.h>#include <sys/socket.h>#include <thread>static void doLog(const char *file, int line, const char *format, ...){ ch..原创 2021-07-22 14:43:14 · 133 阅读 · 0 评论 -
C库stdout造成的死锁
、原创 2021-11-08 19:31:50 · 656 阅读 · 0 评论 -
alarm中断慢系统调用
1. 背景在阻塞系统调用中,我们经常会遇到一种系统调用返回过慢或永远阻塞的情况。此时我们需要让系统调用能够快速返回,提高系统整体性能。我们可以利用中断机制,使得系统调用被中断而成功返回。2. 原理利用alarm函数为进程注册一个闹钟,当闹钟被系统唤醒时将,系统会将SIGALRM信号回馈给进程。 SIGALRM信号的默认操作是终止进程。为了让进程不终止,需要利用sigaction函数向系统注册信号处理函数(此处为啥不用signal注册信号处理函数)。3. sigaction & sig原创 2022-02-26 14:34:23 · 309 阅读 · 0 评论