2017-07-04 56 views
0

是否有像Linux平臺的開發指南那樣的文檔?Affectiva SDK最佳實踐

例如我在使用SDK玩了一下之後腦海中出現的問題: 1. CameraDetector(或任何其他探測器)是否應該在與主GUI線程不同的線程中使用?不知何故,或者是它自己產生另一個線程? 2.當偵聽器通知被執行時 - 是否與創建檢測器的線程相同? 3.啓動和停止探測器是否昂貴?它應該做一次,當應用程序啓動和關閉,也可以在需要時進行當用戶執行某些操作上,我應該使用探測器來完成?

其他檢測器的行爲方式是否相同? 是否有任何其他使用SDK的最佳做法?

回答

1

CameraDetector::start()創建後臺線程,連接到相機並開始處理幀。 CameraDetector::stop()指示後臺線程與相機斷開連接,停止處理幀並關閉。

因此,有一些開銷調用start()stop(),但這是否有影響到你的主線程的性能是由你來評定。我會建議在主線程上作爲初始方法來看看。

回調是在後臺線程上進行的。

關於(一)在客戶端啓動時啓動一次,並在客戶端關機比(B)起動,停止,並在需要的時候有做檢測停止工作的方案,確實沒有一個單一的最佳實踐。如所指出的,在活動會話期間(start()之後即與stop()之前)有在使用額外的資源,所以這是一個因數,其可以偏壓朝向東西(b)如會話是在客戶端應用程序的較大範圍內不頻繁。

此外,在CameraDetector的特定情況下,相機本身可能是其他應用程序有興趣訪問的硬件資源,因此最小化其使用對於其他應用程序更友好。