Write 带阻塞|学习笔记

简介: 快速学习 Write 带阻塞

开发者学堂课程【物联网开发- Linux 高级程序设计全套视频Write 带阻塞】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/660/detail/11040


Write 带阻塞

 

调用write 函数向 FIFO 里写数据,当缓冲已满时 write 也会阻塞。

验证:

Write.c

#include <stdio.h>

#include <string.h>

#include <unistd.h>

#include <sys/types.h>

#include <sys/stat.h>

#include <fcntl.h>

int main(int argc, char  *argv[ ])

{
int fd;

Int i=0

}

fd = open("./fifo",O _RDONLY);

If (td<0)

{

perror("open");

return 0,

}

printf("open read only sucess \n");

while(1 )

{

Write(fd,”hello world”,11);

Printf(“write sucess\n);

I++;

Printf(“i=%d\n”,n);

//sleep(1);

}

close(fd);

return 0;

}

Read.c

Int fd;

Char buf[101];

Mkfifo(“fifo”,o_RDONLY);

If(fd<0)

{

Perror(“open”);

Return 0;

}

Printf(“open read only sucess\n”);

While(1)

{

Memset(buf,0,sizeof(but));

Read(fd,but,100);

Sleep(1);

While(1);

Close(fd);

Return0;

}

打开管道不循环读了,只读一次

效果如下:

image.gif只读了一百个,验证了write,将管道写满后

这两种前提是默认阻塞方式打开管道,没有指定非堵塞。

相关文章
|
弹性计算 负载均衡 监控
记一次socket read导致业务线程阻塞的案例分析
记一次socket read导致业务线程阻塞的案例分析
490 3
|
存储 缓存
【什么是Read Write Through机制】
【什么是Read Write Through机制】
174 0
4.4 处理 read 事件
4.4 处理 read 事件
43 0
|
消息中间件 弹性计算 网络协议
IO:阻塞和非阻塞、同步和异步
当数据还没准备好时,调用了阻塞的方法,则线程会被挂起,会让出CPU时间片,此时是无法处理过来的请求,需要等待其他线程来进行唤醒,该线程才能进行后续操作或者处理其他请求。
229 0
|
物联网 Linux 开发者
写进程退出导致 read 阻塞不住|学习笔记
快速学习写进程退出导致 read 阻塞不住
|
物联网 Linux C语言
验证 read 阻塞|学习笔记
快速学习验证 read 阻塞
|
物联网 Linux 开发者
Write 函数|学习笔记
快速学习 Write 函数
|
JavaScript 物联网 Linux
read 函数|学习笔记
快速学习 read 函数
|
Unix JavaScript 前端开发
关于IO的同步,异步,阻塞,非阻塞
上次写了一篇文章:Unix IO 模型学习。恰巧在这次周会的时候,@fp1203 (goldendoc成员之一) 正好在讲解poll和epoll的底层实现。中途正好讨论了网络IO的同步、异步、阻塞、非阻塞的概念,当时讲下来,大家的理解各不相同,各执己见。
816 0

热门文章

最新文章