第5章文件IO操作.pptVIP

  • 6
  • 0
  • 约 51页
  • 2017-02-03 发布于湖北
  • 举报
第5章文件IO操作

* 5.2 不带缓存的文件I/O操作 5.2.4 文件的非阻塞操作 当文件打开时的flags包含O_NONBLOCK时,read/write就不会阻塞。 非阻塞方式下,当检测到数据没有到达时则立刻返回,减少了不必要的等待,提高了运行效率(例如使服务器充分得以利用)。 可以采用轮询的方式间隔执行read,例如每隔一段时间查询是否有输入,而不是始终处于阻塞状态,或不停地查询,做太多“无用功”。 * 5.2 不带缓存的文件I/O操作 5.2.4 文件的非阻塞操作 例5.9 程序以非阻塞的方式打开当前终端文件/dev/tty,每隔6秒检测终端是否有输入,若30秒后无输入则提示超时。 * 5.2 不带缓存的文件I/O操作 5.2.4 文件的非阻塞操作 例5.9 (续)程序以非阻塞的方式打开当前终端文件/dev/tty,每隔6秒检测终端是否有输入,若30秒后无输入则提示超时。 * 5.2 不带缓存的文件I/O操作 5.2.4 文件的非阻塞操作 例5.9 (续) * 5.2 不带缓存的文件I/O操作 5.2.5 函数fcntl应用及文件上锁 文件上锁可以避免对共享的资源产生竞争,发生读写错误。 文件锁分为建议性锁(使用flock函数)、强制性锁(使用fcntl函数) 可以用函数fcntl改变一个已打开的文件的属性,重设读、写、追加、非阻塞等标志 函数fcntl通过

文档评论(0)

1亿VIP精品文档

相关文档