首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Affectiva SDK最佳实践

Affectiva SDK最佳实践
EN

Stack Overflow用户
提问于 2017-07-05 05:39:47
回答 1查看 195关注 0票数 0

有没有Linux平台的开发指南之类的文档?

例如,在玩了一小段SDK之后,我脑海中出现了一些问题: 1. CameraDetector (或任何其他检测器)是否应该在不同于主GUI线程的线程中使用?它是以某种方式阻塞了还是自己产生了另一个线程? 2.当侦听器通知被执行时-它是创建检测器的同一个线程吗? 3.启动和停止检测器的成本高吗?它应该在应用程序启动和关闭时执行一次,还是可以在用户执行我应该使用检测器的某些操作时按需执行?

其他检测器的行为也是一样的吗?有没有其他使用SDK的最佳实践?

EN

回答 1

Stack Overflow用户

发布于 2017-07-06 05:36:31

CameraDetector::start()创建连接到摄影机并开始处理帧的后台线程。CameraDetector::stop()向后台线程发出信号,使其与摄像机断开连接,停止处理帧并关闭。

因此,调用start()stop()会产生一些开销,但这是否会对主线程的性能产生影响取决于您的评估。我建议将在主线程上执行操作作为初始方法,并查看。

回调是在后台线程上进行的。

关于(a)在客户端启动时启动一次并在客户端关闭时停止与(b)在需要完成检测工作时按需启动和停止的替代方案,并没有真正单一的最佳实践。如上所述,在活动会话期间(即,在start()之后和stop()之前),有额外的资源在使用中,因此,如果会话在客户端应用程序的较大上下文中不频繁,则这是一个可能使事情偏向(b)的因素。

此外,在CameraDetector的特定情况下,摄像头本身可能是其他应用程序也有兴趣访问的硬件资源,因此最大限度地减少其使用将对这些其他应用程序更友好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44914300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档