工具/软件:TI-RTOS
大家好、
我有以下类,只要它实现了 Run()函数,它的任何子类都可以运行。
在 SYS/BIOS 中创建任务时、我必须附加静态类函数(与 POSIX API 相同)、因此我使用了静态类函数
函数技巧。 这种方法的问题在于、在运行时、所有任务基本上都具有相同的函数
嗯 (我认为是意外的)、当我创建 了更多的子应用程序崩溃时。
我认为任务堆栈存在问题 、但我不知道如何处理。
====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
类 ActiveCls{
专用:
Task_Params taskParams;
Task_handle taskLa;
ERROR_Block EB;
受保护:
void attach (void*(* tsk_fxn)(void* arg)、int priority){
ERROR_INIT (&EB);
Task_Params_init (&taskParams);
taskParams.priority = priority;
taskParams.STACKSIZE = 0x100000;
taskParams.arg0 =(UArg)此;
taskLa = Task_create (ActiveCls::__run、_taskParams、&EB);
if (taskLa ==空)
{
System_printf ("任务创建()失败!\n"\});
BIOS_exit (0);
}
/* pthread API 也是如此-但在 Windows 7下运行良好!! *
}
虚拟 void* Run(){
log
"警告.. 此类未实现 run()函数。\n");
返回0;
}
ActiveCls (int pri){
附加(&ActiveCls::run、pri);
}
ActiveCls(){
log ("警告.. 未设置类优先级,默认为优先级1。\n");
attach (&ActiveCls::run、1);
}
静态空_run (UARg a0、UARg A1){
(((ActiveCls*) a0)->Run();
}
};
类 AnExampleChild:公共 ActiveCls {
公共:
void* Run() {
日志("嘿!、我正在运行。。。\n")
}
};
====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
此致、
餐巾温泉