读取系统中的超时事件调用读取串行端口

时间:2014-08-08 14:18:33

标签: c linux operating-system

我正在使用read系统调用从串行读取数据。看来这个调用只读取一个字节,虽然它给出了多少字节来读取

bytes_read = read(fp, buffer, 20);

我不知道发件人将发送多少字节。如果我知道,那么我会读很多次。我怀疑,虽然读到串行的第二个字节没有到达,所以它就会出来了。因此,我想实现超时。 read调用应该等待那么多时间,读取所有字节直到超时。我希望专家帮助我。

1 个答案:

答案 0 :(得分:0)

您可以通过termios(3)库调用来控制超时和行缓冲区特性。