c 多串列埠多執行緒接收資料

2021-08-11 10:48:17 字數 555 閱讀 7626

因為前段時間需要用到串列埠接收資料,且使用的串口號不確定,需採用多執行緒的方式來實現接收。

建立執行緒:

thread thread = null;

for (int i = 0; i < portnum; i++)//根據選擇的串口號數量建立對應數量的執行緒

執行緒執行函式:

public static void run(string serialname )

sp1.open();

}

資料接收處理函式:

private static void sp1_datareceived(object sender, serialdatareceivedeventargs e)

int len = sp.bytestoread;//資料的長度

byte receiveddata = new byte[len];

sp.read(receiveddata, 0, len);//讀取資料

}}

C 多執行緒操作WPF GUI控制項,串列埠資料接收傳送

執行環境為vs2015,如果直接在多執行緒中操作gui會報錯,在.net中,可以通過dispatcher.invoke來委託進行操作 具體用法示例 節選自該程式中接收下位機傳送資料並顯示的 1.先在其他函式 中建立並啟動執行緒 threadstart threadstart newthreadsta...

多執行緒串列埠接收資料 全域性變數的使用

開啟乙個新執行緒,死迴圈接收串列埠資料 一.在工程新增threa.h和thread.cpp thread.h ifndef thread h define thread h include class thread public qthread endif thread hthread.cpp in...

C 基於事件驅動的多串列埠多執行緒串列埠通訊軟體架構設計

最近寫乙個串列埠通訊程式,客戶對介面,容量要求都比較高。要求支援多串列埠同時工作。於是自己提煉了乙個架構,用於拋磚引玉。本來想用vc,基於成本考慮,決定採用.net,而且c 的事件比vc的訊息容易控制些,只是跨執行緒觸發的時候稍微注意下。先上個圖 上圖是整個通訊控制架構,根據配置檔案載入例項,每個串...