android - 在后台线程中调用 createCaptureSession
问题描述
当调用createCaptureSession时,这需要大约 200 毫秒才能在我的测试设备中恢复。我以为这个调用是异步的,所以花了这么长时间很奇怪。
为了缓解这个问题,我现在从后台线程调用它,以便在这 200 毫秒内不阻塞 UI。对于调用,我正在重新使用我在SessionConfiguration中传递的同一个线程(执行程序) 。
到目前为止,我没有发现任何副作用。但是我想知道在后台线程上执行这样的调用是否可以,或者我可能会在特定用例、设备型号、android 版本中遇到问题。
解决方案
可以遇到的问题可能是由于android设备是单核的或者当时需要性能的进程造成的。但是,这是由设备和用户引起的问题,而不是由开发人员引起的。
- 我们知道没有单核安卓手机。
- 线程不会引起任何问题,因为它们是在此性能负载期间发挥作用的软件元素。只有在加载的情况下,处理才会稍后完成
推荐阅读
- java - 而不是多个 if 语句 Java 日期
- c++ - C++ 转换为同一类
- javascript - 如何确定数组中的哪些对象已被用户更改
- c# - Xamarin.Android:带有 MultipartFormDataContent 的 HttpClient 返回 400 错误请求
- android - 让我的 RecyclerView 表现更好
- javascript - 是否可以使用 Break 跳出或跳过爬取功能?
- javascript - 如何将 javascript 的结果显示为 HTML 链接?
- amazon-web-services - 在 Boto3 中检查 AWS S3 写入权限
- apache-spark - 运行 Apache.spark 时出现 NullPointerException
- google-apps-script - 使用 Google Apps 脚本复制数据时如何忽略空单元格并更改列顺序