QNX下的使用管道编程问题

我在用fifo来编写进程之间的数据传输,参考unix进程编程,但是遇到一个奇怪的现象。
1.程序卡在open 语句没法继续了,后续语句都执行不了。代码如下,这是为什么呢?
2.此外,我们的程序需要传送40个字节的数据,分两组32个每15秒一次,其他的0.1秒一次,
那么,把两组分时分别写入同一 fifo 来传输可以么?
3.传过去的数据包不校验行不行,要是校验,QNX有没有提供相关的函数,有没有关于数据包校验的书籍?


#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

int main( void )
{
int fifo;

mkfifo( “/tmp/upward”, S_IRUSR | S_IWUSR );
printf(“ok\n”);
fifo= open("/tmp/upward", O_WRONLY);
printf(“ok\n”);
close(fifo);
unlink("/tmp/upward");
exit(0);
}


1.unlink()放在最前面试试
2.可以,只要“分时”是固定的,那么读数据的那一端就可以按指定规则读取
3.只要做的好不校验也可以

谢谢,QNXmaster,我已经找到原因了,调试通过了!把只写属性改成可读可写属性就行了