1.一种处理数据的方法,包括:
获取待处理的至少一条数据;
创建预定数量的队列,其中,每个队列对应一个过滤条件;
将所述至少一条数据存储到每个队列中;
对于所述预定数量的队列中的队列,从该队列中读取数据,根据该队列对应的过滤条件对读取出的数据进行标记。
2.根据权利要求1所述的方法,其中,所述从该队列中读取数据,根据该队列对应的过滤条件对读取出的数据进行标记,包括:
从该队列头部取出一条未加锁的数据;
将所述未加锁的数据加锁;
如果加锁后的数据满足该队列对应的过滤条件,则对所述加锁后的数据进行标记。
3.根据权利要求2所述的方法,其中,所述方法还包括:
如果所述加锁后的数据不满足该队列对应的过滤条件,则将所述加锁后的数据解锁后放回队列。
4.根据权利要求2所述的方法,其中,队列为双端队列;以及所述方法还包括:
对于所述预定数量的队列中的每个队列,若该队列中的数据被取空,则通过工作窃取算法从其它非空队列的尾部读取数据,根据该队列的过滤条件对读取出的数据进行标记。
5.根据权利要求1-4之一所述的方法,其中,数据包括金额;以及所述获取待处理的至少一条数据,包括:
按金额由大到小的顺序获取待处理的至少一条数据。
6.根据权利要求5所述的方法,其中,所述方法还包括:
对于所述预定数量的队列中的队列,若该队列中满足该队列对应的过滤条件的数据所包括的金额之和达到预定数值,则删除该队列。
7.一种处理数据的装置,包括:
获取单元,被配置成获取待处理的至少一条数据;
创建单元,被配置成创建预定数量的队列,其中,每个队列对应一个过滤条件;
存储单元,被配置成将所述至少一条数据存储到每个队列中;
标记单元,被配置成对于所述预定数量的队列中的队列,从该队列中读取数据,根据该队列对应的过滤条件对读取出的数据进行标记。
8.根据权利要求7所述的装置,其中,所述标记单元进一步被配置成:
从该队列头部取出一条未加锁的数据;
将所述未加锁的数据加锁;
如果加锁后的数据满足该队列对应的过滤条件,则对所述加锁后的数据进行标记。
9.根据权利要求8所述的装置,其中,所述装置还包括释放单元,被配置成:
如果所述加锁后的数据不满足该队列对应的过滤条件,则将所述加锁后的数据解锁后放回队列。
10.根据权利要求8所述的装置,其中,队列为双端队列;以及
所述装置还包括窃取单元,被配置成:
对于所述预定数量的队列中的每个队列,若该队列中的数据被取空,则通过工作窃取算法从其它非空队列的尾部读取数据,根据该队列的过滤条件对读取出的数据进行标记。
11.根据权利要求7-10之一所述的装置,其中,数据包括金额;以及所述获取单元进一步被配置成:
按金额由大到小的顺序获取待处理的至少一条数据。
12.根据权利要求11所述的装置,其中,所述装置还包括删除单元,被配置成:
对于所述预定数量的队列中的队列,若该队列中满足该队列对应的过滤条件的数据所包括的金额之和达到预定数值,则删除该队列。
13.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
14.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。