请问每个线程都是无限循环函数吗
void rt_init_thread_entry(void* parameter){
/* LwIP Initialization */
#ifdef RT_USING_LWIP
{
extern void lwip_sys_init(void);
/* register ethernetif device */
eth_system_device_init();
#ifdef STM32F10X_CL
rt_hw_stm32_eth_init();
#else
/* STM32F103 */
#if STM32_ETH_IF == 0
rt_hw_enc28j60_init();
#elif STM32_ETH_IF == 1
rt_hw_dm9000_init();
#endif
#endif
/* re-init device driver */
rt_device_init_all();
/* init lwip system */
lwip_sys_init();
rt_kprintf("TCP/IP initialized!\n");
}
#endif
}
这个线程为什么不是无限循环函数? 不都是。
想是就是,想不是就不是。 回复【楼主位】syok_2001
-----------------------------------------------------------------------
如果不是循环函数,那么函数运行完毕后,线程是什么状态那?删除了吗? 如果是rt_thread_create创建出来的动态线程,
运行结束后,会删除thread tcb、删除thread stack。(释放相应分配的内存块)
如果是rt_thread_init初始化的静态线程,运行结束后,更改状态为INIT状态,并不再参与调度。
页:
[1]