我正在開發一個項目,我必須對一些硬件功能做一個包裝。包裝到硬件功能
我們必須在非易失性存儲器中寫入和讀取數據。我有一個庫,具有賣家公司的讀寫功能。問題在於,由於硬件特性,應在每次通話之間延遲調用這些功能。
所以我的解決方案是啓動一個線程,創建一個隊列,並使自己的讀寫功能。所以每次調用我的函數時,數據都會存儲在隊列中,然後在循環線程中將實際讀取或寫入內存。我的函數將使用互斥鎖來同步對隊列的訪問。我的包裝將在一個DLL上。主模塊會調用我的dll init函數來啓動線程,然後它會從不同線程多次調用我的讀/寫函數。
我的問題是:這樣做是否安全?原始功能不可重入。我不知道這是否會成爲問題。有一個更好的方法嗎?
任何幫助將不勝感激。
對不起,我忘了什麼事:
使用-The語言是C++
-The主程序會打電話給我包裝DLL也將調用其他模塊(DLL)中所要調用封裝器DLL。
請在標題或標籤中指定您正在使用的語言,它將幫助有答案的人找到您的問題。 – STW 2010-01-18 16:12:11
The Language is C++ – kepler 2010-01-18 16:18:31
- 主程序將調用我的包裝DLL,但也會調用其他模塊(DLL),這將調用包裝DLL。 – kepler 2010-01-25 17:53:36