31 lines
460 B
C++
31 lines
460 B
C++
|
#include <stdio.h>
|
||
|
|
||
|
#include "hthreadpool.h"
|
||
|
#include "hthread.h"
|
||
|
#include "htime.h"
|
||
|
|
||
|
void print_task(int i) {
|
||
|
printf("thread[%ld]: task[%d]\n", hv_gettid(), i);
|
||
|
hv_sleep(1);
|
||
|
}
|
||
|
|
||
|
int main(int argc, char** argv) {
|
||
|
HThreadPool tp(1, 4);
|
||
|
tp.start();
|
||
|
|
||
|
int i = 0;
|
||
|
for (; i < 10; ++i) {
|
||
|
tp.commit(print_task, i);
|
||
|
}
|
||
|
|
||
|
tp.wait();
|
||
|
|
||
|
for (; i < 20; ++i) {
|
||
|
tp.commit(print_task, i);
|
||
|
}
|
||
|
|
||
|
tp.wait();
|
||
|
|
||
|
return 0;
|
||
|
}
|