我在Windows上完成了相當多的編程,但現在我必須編寫第一個Linux應用程序。在Linux應用程序中的建築建議
我需要使用UDP與硬件設備對話。我必須每秒發送60個數據包,大小爲40個字節。如果我在1秒內發送少於60個數據包,就會發生不好的事情。 數據包的數據可能需要一段時間才能生成。但是如果數據沒有準備好發送出去,可以發送上次發送的相同數據。 計算機是一個命令行的唯一設置,只會運行此程序。
我對Linux不太瞭解,所以我希望能夠得到一個大概的想法,你如何設置一個應用程序來滿足這些要求。 我希望得到如下答案:
製作2個線程,一個用於發送數據包,另一個用於計算。
但我不確定這是如此簡單(也許是)。也許用一些從共享內存發出數據包的守護進程更可靠,然後讓另一個應用程序進行計算?如果它是一個多進程解決方案,你會推薦什麼通信機制? 有什麼方法可以讓我的應用比普通或類似的應用更具優先級?
PS:越防彈越好!
既然你不知道UDP數據包是否到達(這是一種不可靠的協議),怎麼辦你知道你發送的60 +/-數據包到達了嗎?如果一秒鐘發送61個數據包會發生什麼? 59怎麼樣?其他號碼? – 2008-12-28 02:47:12