Re: [問題] Timer、Thread

看板Programming作者 ("小朋友"會自己找出路...)時間15年前 (2010/03/12 15:49), 編輯推噓0(006)
留言6則, 1人參與, 最新討論串3/4 (看更多)
※ 引述《clarkman (涼雨)》之銘言: : 我在已經吃掉許多資源的程式下,想要定期接收RS232的資料 : 但是RS232要求必須在40ms接收2個Com Port的資料 : 處理速度卻慢了一些,無法在那麼短的時間處理 最近也有寫過這方面程式 不過是用C# 分享一下我處理方法 第一個 最簡單的方法 就是拉高速度 19200bps 接收70多Byte 就差不多30ms左右了 38400bps 就降到15ms左右 不過這要看設備有無支援 另一個 接收資料是否要記錄下來 存到資料庫? 如果是 你那麼短的時間接收完資料 又要馬上存到硬碟裡 IO是很頻繁的 如果你電腦又只用一顆硬碟 想必會把電腦拖得很慢 我的方法會用兩個timer或是thread去接收資料 接收完存到buffer裡面 再用另一個timer或是thread把buffer的資料讀出來 累積一定資料筆數 再一次寫進資料庫 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.217.107

03/14 02:39, , 1F
我們是使用ewf,所以放在Dram
03/14 02:39, 1F

03/14 02:40, , 2F
目前很難一直累積筆數,因為protocol規定
03/14 02:40, 2F

03/14 02:41, , 3F
一定要在時間內回,否則都算失敗
03/14 02:41, 3F

03/14 02:41, , 4F
收到資料後還得經過不少處理,導致太慢
03/14 02:41, 4F

03/14 02:42, , 5F
所以必須一收到資料馬上處理很多流程
03/14 02:42, 5F

03/14 02:42, , 6F
然後立即回覆
03/14 02:42, 6F
文章代碼(AID): #1BcV7zI0 (Programming)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 4 篇):
文章代碼(AID): #1BcV7zI0 (Programming)