0
|
1 #include <stdio.h>
|
|
2 #include <stdlib.h>
|
|
3 #include <string.h>
|
|
4 #include "QueueInfo.h"
|
|
5 #include "TaskList.h"
|
|
6 #include "Func.h"
|
|
7
|
|
8
|
|
9 static QueueInfo<TaskList> *queuePool = new QueueInfo<TaskList>() ;
|
|
10
|
|
11 void
|
|
12 queueInfoTest(int count)
|
|
13 {
|
|
14
|
|
15 QueueInfo<TaskList> *q = new QueueInfo<TaskList>(queuePool) ;
|
|
16 QueueInfo<TaskList> *r = new QueueInfo<TaskList>(queuePool) ;
|
|
17
|
|
18 int i = 0;
|
|
19 for (i = 0; i < count; i++) {
|
|
20 q->addLast(q->create());
|
|
21 }
|
|
22 i = 0;
|
|
23 for(TaskListPtr t= q->getFirst(); t ;t = q->getNext(t) ) {
|
|
24 t->length = i++;
|
|
25
|
|
26 }
|
|
27
|
|
28 i = 0;
|
|
29 for(TaskListPtr t= q->getFirst(); t ;t = q->getNext(t) ) {
|
|
30 printf(" No. %d %d\n", i++, t->length);
|
|
31 }
|
|
32
|
|
33 printf("First %d\n", q->getFirst()->length);
|
|
34 printf("Last %d\n", q->getLast()->length);
|
|
35
|
|
36 TaskListPtr t = q->poll();
|
|
37 printf("Polled %d\n", t->length);
|
|
38 q->free_(t);
|
|
39
|
|
40 printf("Length %d = %d - 1\n", q->length(), count);
|
|
41
|
|
42 q->moveToFirst(q->get(count-2));
|
|
43
|
|
44 i = 0;
|
|
45 for(TaskListPtr t= q->getFirst(); t ;t = q->getNext(t) ) {
|
|
46 printf(" No. %d %d\n", i++, t->length);
|
|
47 }
|
|
48
|
|
49 while(!q->empty()){
|
|
50 r->addFirst(q->poll());
|
|
51 }
|
|
52
|
|
53 i = 0;
|
|
54 for(TaskListPtr t= r->getFirst(); t ;t = r->getNext(t) ) {
|
|
55 printf(" No. %d %d\n", i++, t->length);
|
|
56 }
|
|
57
|
|
58
|
|
59 }
|
|
60
|
|
61 /* end */
|