腾讯学习Linux IO与进程线程的小demo练习
停车场[链队列+顺序表+二维数组+广度优先搜索实现+标准IO保存]
garage.c
garage.h
waitCar_linkQueue.c
waitCar_linkQueue.h
auxiliary_fun.c
auxiliary_fun.h
BFS_parking.c
BFS_parking.h
main.c
三个线程实现文件拷贝[文件IO]
main.c
无名管道进程间通信
1.无名管道的大小:64k
2.一旦无名管道被写满后,write函数将发生阻塞,等待无名管道中数据被取走,直到管道空间大于4k,才可以继续往管道中写入数据
3.如果管道中有数据,read函数将非阻塞的从管道中读取,如果管道中没有数据,则read函数将发生阻塞,等待数据的到来.
4.如果管道的读端关闭,继续向管道中写入数据,会造成“管道破裂”,程序异常结束。
5.如果管道的写端关闭,则读端将不再阻塞。
6.一旦在fork之前创建了无名管道,父子进程的pipefd是相互独立的,但是pipefd指向的文件信息表是相同的。
main.c
有名管道进程间通信
写端.c
读端.c
有名管道两个进程相互通信
1.c
2.c
有名管道+信号实现两个非亲缘进程通信
1.c
2.c
IPC两个进程通信
1r.c
2w.c
IPC三个进程相互通信
1.c
2.c
3.c
IPC共享内存
1w.c
2r.c
IPC共享内存+信号量集
1w.c
2r.c
IPC共享内存+信号量集传输文件
send.c
recv.c
sem.c
sem.h
有关Linux其他问题,欢迎您在底部评论区留言,一起交流~
- 作者:L_Z_J
- 链接:https://www.mcoi.top/article/Post-Linux-IO-Process-thread
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。










