Mercurial > hg > Gears > GearsAgda
comparison src/parallel_execution/context.h @ 112:e3cba827d489
Add spawnTask CS
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 03 May 2016 17:29:21 +0900 |
parents | 059b26a250cc |
children | d05b9937aa95 |
comparison
equal
deleted
inserted
replaced
111:556e203de999 | 112:e3cba827d489 |
---|---|
58 TaskManager, | 58 TaskManager, |
59 CreateData1, | 59 CreateData1, |
60 CreateData2, | 60 CreateData2, |
61 CreateTask1, | 61 CreateTask1, |
62 CreateTask2, | 62 CreateTask2, |
63 CreateTask3, | |
64 CreateTask4, | |
63 PutQueue1, | 65 PutQueue1, |
64 PutQueue2, | 66 PutQueue2, |
65 PutQueue3, | 67 PutQueue3, |
66 PutQueue4, | 68 PutQueue4, |
67 GetQueue, | 69 GetQueue, |
70 SpawnTask, | |
68 Twice, | 71 Twice, |
69 StartTime, | 72 StartTime, |
70 EndTime, | 73 EndTime, |
71 Exit, | 74 Exit, |
72 }; | 75 }; |
129 #endif | 132 #endif |
130 struct Task { | 133 struct Task { |
131 enum Code code; | 134 enum Code code; |
132 int key; | 135 int key; |
133 struct Queue* waitMe; | 136 struct Queue* waitMe; |
134 struct Queue* waitI; | 137 struct OdsQueue* waitI; |
138 int idsCount; | |
135 } task; | 139 } task; |
136 struct Queue { | 140 struct Queue { |
137 struct Element* first; | 141 struct Element* first; |
138 struct Element* last; | 142 struct Element* last; |
139 int count; | 143 int count; |
170 } node; | 174 } node; |
171 struct Allocate { | 175 struct Allocate { |
172 enum Code next; | 176 enum Code next; |
173 long size; | 177 long size; |
174 } allocate; | 178 } allocate; |
179 struct OutPutDataSegments { | |
180 union Data **data; | |
181 } ods; | |
182 struct OdsQueue { | |
183 struct OdsElement* first; | |
184 struct OdsElement* last; | |
185 int count; | |
186 } odsQueue; | |
187 struct OdsElement { | |
188 struct OutPutDataSegments* ods; | |
189 struct OdsElement* next; | |
190 } odsElement; | |
175 }; | 191 }; |