我正在尝试在Linux下编写2个服务器/客户端程序,它们通过命名管道进行通信。问题是,有时当我尝试从服务器写入一个不再存在的管道(客户端已停止)时,出现“资源暂时不可用”错误,并且服务器完全停止。Linux中的“写入”功能的问题
据我所知,这是由于在打开fifo chanel时使用O_NONBLOCK参数引起的,表明程序通常会等待,直到它可以再次写入文件中,但有没有办法阻止这种行为,以及如果发生问题,不要停止整个程序(不应该写命令返回-1广告程序正常继续)?
而另一个奇怪的是,这个错误只发生在ide(日食)之外的程序运行。如果我在eclipse中运行这两个程序,错误时写入函数只返回-1,程序正常继续。
谢谢......我刚测试过它,它工作。 – 2010-06-02 14:28:39