6 #include <native/task.h>
7 #include <native/timer.h>
8 #include <native/sem.h>
16 int num
= * (int *)arg
;
18 RT_TASK_INFO curtaskinfo
;
19 curtask
=rt_task_self();
20 rt_task_inquire(curtask
, &curtaskinfo
);
21 rt_sem_p(&sem
, TM_INFINITE
);
22 rt_printf("Task name: %s - Argument %d\n", curtaskinfo
.name
, num
);
26 int main(int argc
, char* argv
[])
31 rt_print_auto_init(1);
32 mlockall(MCL_CURRENT
| MCL_FUTURE
);
33 rt_printf("start task\n");
35 rt_sem_create(&sem
, "sem", 0, S_FIFO
);
39 sprintf(str
, "hello-%d", i
);
40 rt_task_create(&task
[i
], str
, 0, 50+i
, 0);
41 rt_task_start(&task
[i
], &demo
, &i
);
44 rt_sem_broadcast(&sem
);