1
我最近使用winscard庫實現了與ACR122的通信。 我已經使用一個計時器來調用所有的初步認識API調用等 1. SCardEstablishContext 2. SCardListReaders等,以獲得讀取器如何實現基於事件的觸發而不是定時器
我遵守了間隔爲五(5)秒的計時器的狀態。所以這會使設備狀態延遲5秒。
任何人都可以建議我一個更好的方法,如「基於事件的觸發器」,以避免這種延遲,並一起刪除計時器。
這樣更好嗎?現在你有x個線程專門用於輪詢,每個線程都使用專用堆棧(佔用內存),給GC處理一些內容,可能導致上下文切換,使用CPU,可能會使CPU遠離可以更有效地使用它的處理,等等。坦率地說,一個計時器聽起來更好。 – 2014-09-16 10:37:10
@PeterRitchie:關於爲什麼使用和建議基於線程的解決方案的一些背景: - SCardGetStatusChange是一個阻塞調用。我們可以設置它,只有當卡放在讀卡器上時它纔會返回。所以真正的卡查詢是由智能卡讀卡器(它有一個微控制器)和調用線程是空閒的。 – 2014-09-16 13:41:50