object:setvbuf()

类型 函数
对象 文件
io.*
返回值
版本 发行版 2024.3703
关键词 setvbuf、文件
另请参阅 io.open()
io.flush()
io.write()

概述

设置输出文件(或控制台)的缓冲模式。

此函数可用于控制文件写入和控制台输出的缓冲。在控制台输出(print() 和对 io.write() 的调用)上禁用缓冲时,将在 Xcode 控制台以及 iPhone/iPad 的 Console.app 上即刻显示信息(调试数据)。

须知

禁用缓冲可能会影响应用的性能。缓冲区的刷新可随时通过 io.flush() 函数执行。

语法

File:setvbuf( mode [, size ] )
模式 (必填)

字符串. 有三种可用模式

  • “no” — 无缓冲;任何输出操作的结果都会立即出现。
  • “full” — 完全缓冲;只有当缓冲区已满(或当您明确刷新文件(请参阅 io.flush())时)才会执行输出操作。
  • “line” — 行缓冲;缓冲输出直到输出换行符,或者从某些特殊文件(如终端设备)获得任何输入为止。
大小 (可选)

数字. 以字节为单位,指定缓冲区大小。默认值大小合适。

示例

io.output():setvbuf( "no" )  -- Disable output buffering for the console