跳到主要内容

file_queue

简介

文件队列

使用方法

  1. 通过指定文件名来创建一个队列,队列创建后会在当前目录创建文件夹和文件来存储数据
    object fqueue = file_queue.create_queue("file_queue1", { "count_per_batch" : 3 });
  1. 创建好后就可以像使用普通队列一样往队列里添加元素了
    map data1 = { "key3" : 301, 302 : "val3"};
fqueue.send_dup(data1);
  1. 文件队列能持久化,也可能会脱离当前环境,所以handle类型的数据不能放到队列里面(脱离环境无法恢复)

  2. 从队列里取出数据,参数为等待时间,单位秒

    fqueue.receive(5)
  1. 使用完的队列可以删除,如果队列中还有元素,会一并删除
    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)通过名字查找队列