# fiber 库模块帮助文档

## fiber 成员列表 <a id="fiber" href="#fiber">&#x23;</a>

### fiber.create(函数对象,应用程序根目录) <a id="fiber.create" href="#fiber.create">&#x23;</a>
创建纤程  
调用 fiber.resume 函数启动纤程,  
参数2为可选参数,应用程序根目录只能设置为硬盘上实际存在的目录,  
改变应用程序根目录,会同时改变用户库目录

### fiber.current() <a id="fiber.current" href="#fiber.current">&#x23;</a>
返回当前正在运行的纤程  
非纤程内调用则返回null

### fiber.generator( 生成器,... ) <a id="fiber.generator" href="#fiber.generator">&#x23;</a>

```aardio
for v in fiber.generator(/*使用纤程创建迭代器。  
参数 @1 指定纤程函数，可添加任意个纤程启动参数。  
纤程函数内使用 fiber.yield 返回迭代值。*/,){  

}
```

### fiber.resume(纤程对象,启动参数...) <a id="fiber.resume" href="#fiber.resume">&#x23;</a>
继续运行纤程。  
除参数 @1 以外的其他参数为首次启动纤程函数的调用参数。  

成功运行纤程则返回 true 以及纤程内调用 fiber.yield 函数时传入的参数。  
错误则返回 false 以及错误信息.

### fiber.status(纤程) <a id="fiber.status" href="#fiber.status">&#x23;</a>
获取纤程状态

### fiber.yield(一个或多个返回值) <a id="fiber.yield" href="#fiber.yield">&#x23;</a>
暂停纤程,  
此函数传入参数将会作为fiber.resume()的返回值。  
下次调用fiber.resume()的参数即为本次调用的返回值。

## fiber.status 成员列表 <a id="fiber.status" href="#fiber.status">&#x23;</a>

### fiber.status.current <a id="fiber.status.current" href="#fiber.status.current">&#x23;</a>
当前正在运行的纤程

### fiber.status.dead <a id="fiber.status.dead" href="#fiber.status.dead">&#x23;</a>
纤程已完成或已出错

### fiber.status.running <a id="fiber.status.running" href="#fiber.status.running">&#x23;</a>
正在调用其他纤程

### fiber.status.suspended <a id="fiber.status.suspended" href="#fiber.status.suspended">&#x23;</a>
等待中
