当前位置:  技术问答>linux和unix

poll函数操作fd,等待读取失败.怎么修改程序?

    来源: 互联网  发布时间:2016-10-20

    本文导语:  1. 创建两个fifo,用于读入数据. 2. main函数进入poll循环,监视这两个fd 3. 当poll返回>0的时候,读取管道的内容并打印 从命令行,用echo命令向myfifo1/myfifo2发送数据,我期待a.out立刻将数据打印出来。但是a.out阻塞了,...

1. 创建两个fifo,用于读入数据.
2. main函数进入poll循环,监视这两个fd
3. 当poll返回>0的时候,读取管道的内容并打印

从命令行,用echo命令向myfifo1/myfifo2发送数据,我期待a.out立刻将数据打印出来。但是a.out阻塞了,什么输出也没有。
我的代码问题在哪里?


#include
#include
#include
#include
#include
#include
#include
char buf[20]={0};
int f(const char* fifo){
  unlink(fifo);
  mkfifo(fifo,0666);
  return open(fifo,O_RDONLY);
}
void g(int fd){
  read(fd,buf,sizeof(buf));
  printf("read done:%sn",buf);
}
int main(void){
  int fd1=f("myfifo1");
  int fd2=f("myfifo2");
  if(!(fd1||fd2))return 1;
  struct pollfd myfifo[2];
  myfifo[0].fd=fd1;
  myfifo[0].events=POLLIN;
  myfifo[1].fd=fd2;
  myfifo[1].events=POLLIN;
  int ret;
  while(ret=poll(myfifo,fd2+1,-1)){
    if(ret

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.util类linkedlist<e>的类成员方法: poll定义及介绍
  • 哪位能详细介绍一下poll的用法,感觉man poll说得不够清晰
  • java命名空间java.util接口queue<e>的类成员方法: poll定义及介绍
  • 应用层获得SIGIO信号如何区分是kill_fasync(poll_in)或kill_fasync(poll_out)产生的
  • java命名空间java.util类priorityqueue<e>的类成员方法: poll定义及介绍
  • 一个关于poll与线程的问题
  • java命名空间java.util类arraydeque<e>的类成员方法: poll定义及介绍
  • tuxedo客户端调用的tpacall返回的fd是否支持poll?
  • java命名空间java.util.concurrent类priorityblockingqueue<e>的类成员方法: poll定义及介绍
  • poll_wait无法阻塞是什么原因造成的?
  • java命名空间java.util.concurrent类concurrentlinkedqueue<e>的类成员方法: poll定义及介绍
  • 伪终端模式下poll超时的问题
  • java命名空间java.util接口deque<e>的类成员方法: poll定义及介绍
  • 怎么用poll检查设备是否有数据?还有fsync怎么用?
  • java命名空间java.util.concurrent接口blockingdeque<e>的类成员方法: poll定义及介绍
  • Ajax投票程序 Ajax Poll
  • java命名空间java.util.concurrent接口completionservice<v>的类成员方法: poll定义及介绍
  • poll为什么不返回?
  • java命名空间java.util.concurrent类synchronousqueue<e>的类成员方法: poll定义及介绍
  • 中断和polling的区别?
  • java命名空间java.util.concurrent类delayqueue<eextendsdelayed>的类成员方法: poll定义及介绍
  • @@请教poll模式和select中的FD_SETSIZE


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3