1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
pthread_mutex_lock(&ptty->mt)
ret = read(ptty->fd, pbuf, 1) //由于read并不阻塞 要监听随时可能来数据的串口 得不停的循环的查看 效率好低
if(ret <0)
{
//串口没有数据进来
}
else
{
//相关处理
}
/*
怎样加以控制使得,或使用什么函数
readfunction(ptty->fd, pbuf, ......)//使得这儿没有串口数据时阻塞,有串口数据了就读到
//避免不停的循环+sleep() 耗费ARM板资源,而且有时还漏读
//有的说用什么fcntl,ioctl 这两不太懂,希望可以解释清楚点
*/
pthread_mutex_unlock(&ptty->mt)
open返回文件描述符为0是open成功的,这个没影响。在read那里阻塞是神马情况呢?read也有返回值的,那个返回值是多少?还有,在read后面调用个perror函数看看错误是个什么。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)