需求:在ros中,通過捕捉按鍵輸入完成飛機的模式切換,該方式比較適合多機一鍵起飛或者其他模式切換操作。
簡單說明:採用的是c++標準庫提供的cin函式,但是這種方式為阻塞等待鍵盤按下,所以需要採用多執行緒或者多程序的方式,又採用了的是共享變數(標誌位)的想法,故在乙個程序中採用多執行緒即可。下面的示例給出乙個簡單的實現模板。在ros中可以直接編譯執行,在單c++函式中,需要在g++ -lpthread完成編譯。join的作用為主函式執行結束後,子執行緒仍然可以一直執行,而不是一起結束。
#include
#include
int count =0;
void
thr_fun1
(void)}
}int
main
(int argc,
char
** ar**)
else
}return1;
}
C 多執行緒簡單示例
作為 小白,最近需要用到c 多執行緒,搜了一下,得到很多前輩的指點,尤其有乙個很好理解的帖子。大致抄錄如下,侵權通刪!region using system using system.collections.generic using system.linq using system.text us...
多執行緒示例
include include include pthread t thread 2 pthread mutex t mut int num 0 void thread1 void args pthread exit null void thread2 void args pthread exit ...
C 實現多執行緒
include include include std mutex display mutex 使用互斥鎖 void foo int i void multithread for int i 0 i 4 i std thread thread foo,i thread.detach 執行緒資源 分離...