Mercurial > hg > Game > Cerium
annotate TaskManager/kernel/ppe/Threads.h @ 2054:2e7a6f40672f draft
add param(4) in FileMapReduce.cc
author | masa |
---|---|
date | Fri, 29 Jan 2016 15:56:28 +0900 |
parents | f73ca57cdc81 |
children |
rev | line source |
---|---|
817 | 1 #ifndef INCLUDED_THREADS |
2 #define INCLUDED_THREADS | |
3 | |
4 #include <pthread.h> | |
1179 | 5 #include "base.h" |
6 #include "types.h" | |
1581
8ee897303cd0
fix multi_dimention
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
1561
diff
changeset
|
7 #include "TaskList.h" |
817 | 8 |
1877 | 9 class Sem; |
817 | 10 |
11 class Threads { | |
12 public: | |
895
b662e9dd26b0
add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
824
diff
changeset
|
13 BASE_NEW_DELETE(Threads); |
b662e9dd26b0
add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
824
diff
changeset
|
14 |
817 | 15 /* constructor */ |
824 | 16 Threads(int num = 1) {}; |
17 virtual ~Threads() {}; | |
817 | 18 |
19 /* functions */ | |
1191
bd4a27ae2524
success run to ballbound
Daichi TOMA <e085740@ie.u-ryukyu.ac.jp>
parents:
1185
diff
changeset
|
20 virtual void init() = 0; |
817 | 21 virtual int get_mail(int speid, int count, memaddr *ret) = 0; // BLOCKING |
22 virtual int has_mail(int speid, int count, memaddr *ret) = 0; // NONBLOCK | |
23 virtual void send_mail(int speid, int num, memaddr *data) = 0; // BLOCKING | |
1499 | 24 virtual void add_output_tasklist(int command, memaddr buff, int alloc_size) = 0; |
25 virtual int is_gpu(int cpuid) { return 0; } | |
1639 | 26 virtual int spawn_task(int cpu_num, TaskListPtr p) = 0; |
1877 | 27 virtual void set_mail_waiter(Sem *w) = 0; |
817 | 28 /* variables */ |
29 pthread_t *threads; | |
30 int cpu_num; | |
899 | 31 } ; |
817 | 32 |
33 #endif |