PX4模块代码启动流程
软件项目管理琥珀桃仁的做法PX4模块代码启动流程
由于经常纠结程序代码启动流程,以EKF2为例总结⼀下。
版本:V1.9.0
表扬英文源码路径:src/modules/ekf2/ekf2_main.cpp
第⼀步:启动时会进⼊和⽂件名相同的函数ekf2_main(),然后跳转导类模板函数EKF2::main();
第⼆步:判断指令,进⼊对应函数,假设指令为"start",然后进⼊start_command_ba,接着如果这个线程还没有运⾏的话,就会开启⼀个线程task_spawn;
蒜苔炒饼第三步:到之前那个类⾥⾯运⾏线程函数。这⾥时EKF2::task_spawn,这⾥⾯运⾏了⼀个函数,run_trampoline,跳转之后就会发现这个函数最终是运⾏run这个函数,也就时说对于任意个模块A,在不管建⽴线程的前提下,所有的线程都是从A::run()这个函数开始的。
小儿感冒药
劳动的快乐作文
>中再>同事英语