xref: /nrf52832-nimble/rt-thread/examples/kernel/thread_dynamic.c (revision 104654410c56c573564690304ae786df310c91fc)
1 #include <rtthread.h>
2 #include "tc_comm.h"
3 
thread_entry(void * parameter)4 static void thread_entry(void* parameter)
5 {
6     rt_kprintf("thread dynamicly created ok\n");
7     rt_thread_delay(10);
8     rt_kprintf("thread exit\n");
9 
10     tc_done(TC_STAT_PASSED);
11 }
12 
thread_dynamic_init()13 int thread_dynamic_init()
14 {
15     rt_thread_t tid;
16 
17     tid = rt_thread_create("test",
18         thread_entry, RT_NULL,
19         THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE);
20     if (tid != RT_NULL)
21         rt_thread_startup(tid);
22     else
23         tc_stat(TC_STAT_END | TC_STAT_FAILED);
24 
25     return 0;
26 }
27 
28 #ifdef RT_USING_TC
_tc_thread_dynamic()29 int _tc_thread_dynamic()
30 {
31     thread_dynamic_init();
32 
33     return 20;
34 }
35 FINSH_FUNCTION_EXPORT(_tc_thread_dynamic, a dynamic thread test);
36 #else
rt_application_init()37 int rt_application_init()
38 {
39     thread_dynamic_init();
40 
41     return 0;
42 }
43 #endif
44 
45