|
rt-thread-RC1删除线程再创建线程出现内存爆仓现象
创建1个线程A,在A线程中创建B线程,
然后再重复删除B线程,创建B线程,出现内存不能释放,最终爆仓
代码如下:
while(1){
rt_thread_delay(100);
//删除线程B
if(thread_B != RT_NULL){
rt_thread_delete(thread_B);
thread_B = RT_NULL;
rt_thread_delay(100);
thread_B = rt_thread_create("B",B, RT_NULL,2048, 18, 20);
if (thread_B != RT_NULL) rt_thread_startup(thread_B);
}
}
分析是删除线程后,内存来不及回收,再创建线程后内存增加,直到爆仓。 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|