/** * [TcbInitAll :Init All Tcbs] */ void TcbInitAll() { int id; for(id = 0; id < MAX_TCB_NUM; id++) { TcbInit(id); } }
/** * [ThreadDestory 线程在Tcb中的撤销] * @param id [Tcb Id] */ void ThreadDestory(int id) { disable(); free(tcbs[id].stack); TcbInit(id); printf("\n\n >>Thread%d: %s already destory\n",id,tcbs[id].name); enable(); }
int uTaskCtor( void ) { DBG_MSG(DBG_TRACE, "%s\n", __FUNCTION__); memset(&gCore, 0, sizeof(gCore)); QUEUE_INIT(gCore.IsrQ); TcbInit(); PoolInit(); gCore.Flags = CORE_FLAGS_INIT; return UTASK_S_OK; }