1、timeslice sample例程中传参
2、说明
首先,rt_thread_create创建动态线程,入口函数的传参的定义是"void * parameter",也就是说可以传任意类型的指针;
而在实际调用的时候传入的是"(void*)1",等于传入了一个指向0x0000 0001的指针。
再看,thread_entry中函数参数也是"void * parameter",可以传任意类型的指针,那么传(void*)1没问题;
函数内,value = (rt_uint32_t)parameter,把指针指向的地址 强制转换为(rt_uint32_t)的类型,(void*)1指向的地址转成u32的类型就是1。
所以,最后value得到了1;
rt_thread_t rt_thread_create(const char *name,
void (*entry)(void *parameter),
void *parameter,
rt_uint32_t stack_size,
rt_uint8_t priority,
rt_uint32_t tick)