file_queue
简介
文件队列
使用方法
- 通过指定文件名来创建一个队列,队列创建后会在当前目录创建文件夹和文件来存储数据
object fqueue = file_queue.create_queue("file_queue1", { "count_per_batch" : 3 });
- 创建好后就可以像使用普通队列一样往队列里添加元素了
map data1 = { "key3" : 301, 302 : "val3"};
fqueue.send_dup(data1);
-
文件队列能持久化,也可能会脱离当前环境,所以handle类型的数据不能放到队列里面(脱离环境无法恢复)
-
从队列里取出数据,参数为等待时间,单位秒
fqueue.receive(5)
- 使用完的队列可以删除,如果队列中还有元素,会一并删除
file_queue.delete_queue(fqueue2.get_name());
组件接口
FileQueueImpl.gs
queue一样,但是使用磁盘文件
函数原型 | 函数作用 |
---|---|
bool send_dup(mixed val) | 向队列发送数据 |
mixed receive(mixed wait_time = -1) | 从队列接收对象 |
file_queue.gs
函数原型 | 函数作用 |
---|---|
object create_queue(string name = nil, map args = ) | 创建一个队列 |
void delete_queue(string name) | 删除一个队列,包括它对应的所有文件也会删除 |
object find_queue(string name) | 通过名字查找队列 |