Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
api:non-standard-lua-libs:zh [2023/11/28 10:32]
hfsr [输入输出功能]
api:non-standard-lua-libs:zh [2023/11/28 10:40]
hfsr [调试]
Line 139: Line 139:
 操作系统功能 操作系统功能
 --------------------------- ---------------------------
-`os` 库内的[原函数](http://​www.lua.org/​manual/​5.2/​manual.html#​6.9)已经被部分重新实现。+`os`库内的[原函数](http://​www.lua.org/​manual/​5.2/​manual.html#​6.9)已经被部分重新实现。
  
-- `os.clock` 被重新实现为返回一个近似的 CPU 时间,也就是计算机在一个执行器线程中实际运行的时间。这与计算机运行时间**一样,获取此时间请参见[[api:​computer:​zh|computer.uptime]]。 +- `os.clock`被重新实现为返回近似CPU时间,也就是计算机在一个执行器线程中实际运行的时间。这与计算机运行时间**一样**,获取此时间请参见[[api:​computer:​zh|computer.uptime]]。 ​  
-- `os.date` 被重新实现为游戏中的时间,并支持大多数格式。 +\\ 
-- `os.execute` 被重新实现,相当于从已挂载的文件系统中通过 `shell.execute` 启动程序。传入的字符串相当于在 shell 内输入的命令。 +- `os.date`被重新实现为使用游戏时间,并支持大多数格式。 ​  
-- `os.exit` 抛出一个错误并试图终止当前的 ​coroutine。 +\\ 
-- `os.setenv` 添加 Lua shell 的环境变量。 +- `os.execute`被重新实现,相当于从已挂载的文件系统中通过`shell.execute`启动程序。传入的字符串相当于在 shell 内输入的命令。 ​  
-- `os.remove` 是 `filesystem.remove` 的别名。 +\\ 
-- `os.rename` 是 `filesystem.rename` 的别名。 +- `os.exit`抛出一个错误并试图终止当前的协程。   
-- `os.setlocale` **可用。+\\ 
 +- `os.setenv`添加Lua shell的环境变量。 ​  
 +\\ 
 +- `os.remove`是`filesystem.remove`的别名。 ​  
 +\\ 
 +- `os.rename`是`filesystem.rename`的别名。 ​  
 +\\ 
 +- `os.setlocale`**可用**。   
 +\\
 - `os.time` 被重新实现为返回自世界创建以来的游戏时间。 - `os.time` 被重新实现为返回自世界创建以来的游戏时间。
-  注意这个时间是以“游戏内秒”为单位的。要获得世界创建起的时间刻(tick,需要将其乘以 `1000/​60/​60` (因为一天有24000个时间刻) 然后减去 6000。这个 6000 的偏移量不是随便设的,它可以确保早上 6 点确实是那个时候。Minecraft莫名其妙地认为早上六点是零,可能是因为那是一个新游戏开始的时间……+  注意这个时间是以“游戏内秒”为单位的。要获得世界创建起的tick,需要将其乘以 `1000/​60/​60`(因为一天有24000个时间刻)然后减去6000。这个6000的偏移量不是随便设的,它可以确保早上6点确实是早上6点。Minecraft莫名其妙地认为早上六点是零,可能是因为那是新游戏开始的时间…… ​  
 +\\
 - `os.tmpname` 已被重新实现,可以创建一个未使用的名字挂载到 `/tmp` 下。 - `os.tmpname` 已被重新实现,可以创建一个未使用的名字挂载到 `/tmp` 下。
  
 额外增加了一个函数: 额外增加了一个函数:
  
-- `os.sleep(seconds:​ number)` 允许在指定的时间内暂停脚本。`os.sleep` 消耗事件,但注册的处理函数和线程在休眠时仍会接收事件。换句话说,在睡眠状态下,信号仍然会被处理函数处理,也就是说你无法在睡眠结束后拉取睡眠期间堆积的信号,因为没有信号会留在队列中(或者说至少不是全部信号)。+- `os.sleep(seconds:​ number)`允许暂停脚本指定时间长度。`os.sleep`消耗事件,但注册的处理函数和线程在休眠时仍会接收事件。换句话说,在睡眠状态下,信号仍然会被处理函数处理,也就是说你无法在睡眠结束后拉取睡眠期间堆积的信号,因为没有信号会留在队列中(或者说至少不是全部信号)。
  
-[[api:​computer:​zh|computer(电脑) API]] 提供了一些类似这个类别的函数+此类别的一些新函数可以在[[api:​computer:​zh|computer(电脑) API]]中找到
  
 调试 调试
 ----- -----
-只实现了 `debug.traceback` 和 `debug.getinfo` ​(1.5.9 起)后者仅限被动信息。+只实现了`debug.traceback`和`debug.getinfo`1.5.9起,仅限被动信息。
  
 目录 目录
 ----------- -----------
 {{page>​api:​contents:​zh&​noheader&​noeditbutton&​nouser&​nofooter}} {{page>​api:​contents:​zh&​noheader&​noeditbutton&​nouser&​nofooter}}