实验环境:ubuntuKylin 13.10
在程序里同时有select和定时器,
select 会被定时器产生的EINTR中断
在定时器的设置中增加了SA_RESTART和sigprocmask,发现都不管用
只能自己判断EINTR来重启select了。
在select被EINTR中断时,我输出一条打印信息然后重启select
发现一个现象,当定时器的时间设置为300ms,发现这是一个极限值,如果小于等于这个值,
发现系统响应缓慢,对select监听的描述符的响应也十分缓慢。
分析应该是select来不及复位造成的。
如果大于300ms,select会在300ms重启一次,并打印重启信息,说明在大于300ms的定时器中断,系统是来得及
重启select的。
下一步在am3352上再测试。