Multithreading 什么';这是一个呼叫线程?
我正在使用Android的CameraAPI2进行应用程序开发。 我使用setOnImageAvailableListener(OnImageAvailableListener侦听器,处理程序)指定回调或侦听器。 参数侦听器是一个将运行的回调函数,参数处理程序指定应在其上调用侦听器的线程。如果处理程序为null,则应在调用线程的循环器上调用侦听器。 侦听器是一个接口,其onImageAvailable()方法应被重写 我不太清楚什么是“调用线程”?是调用setOnImageAvailableListener(…)方法的线程还是调用onImageAvailable(…)方法的线程 非常感谢 YL调用线程是调用方法的线程或调用方法的线程。如果Multithreading 什么';这是一个呼叫线程?,multithreading,android-camera2,Multithreading,Android Camera2,我正在使用Android的CameraAPI2进行应用程序开发。 我使用setOnImageAvailableListener(OnImageAvailableListener侦听器,处理程序)指定回调或侦听器。 参数侦听器是一个将运行的回调函数,参数处理程序指定应在其上调用侦听器的线程。如果处理程序为null,则应在调用线程的循环器上调用侦听器。 侦听器是一个接口,其onImageAvailable()方法应被重写 我不太清楚什么是“调用线程”?是调用setOnImageAvailableLi
thread1
调用方法methodA
(如果methodA
从thread1
中调用),则methodA
的调用线程为thread1
。listener参数指定稍后将调用的回调方法。调用线程将是调用onImageAvailable
方法的线程(发起调用的线程)
根据,回调被传递到调用摄影机的线程。open
调用线程是调用方法的线程或调用方法的线程。如果thread1
调用方法methodA
(如果methodA
从thread1
中调用),则methodA
的调用线程为thread1
。listener参数指定稍后将调用的回调方法。调用线程将是调用onImageAvailable
方法的线程(发起调用的线程)
根据,回调被传递到调用
摄影机的线程。open
我进入位于ImageReader.java中的setOnImageAvailableListener(…)的源代码:(…Looper Looper=handler!=null?handler.getLooper():Looper.myLooper();…)我认为调用线程应该是调用setOnImageAvailableListener(…)的线程。源代码声明,listener
变量只是赋值的,而不是调用调度的。因此,setOnImageAvailableListener
不调用listener
,这基本上意味着它不调用onImageAvailable
回调。因此,您不能说对回调的调用源自此方法,因此不能说明调用线程与调用setOnImageAvailableListener
的线程相同。回调将传递给调用Camera.open
的线程,根据前面的说明,该文档是关于旧API的,我现在使用camera2。我进入了位于ImageReader.java中的setOnImageAvailableListener(…)的源代码:(…Looper Looper=handler!=null?handler.getLooper():Looper.myLooper();…)我认为调用线程应该是调用setOnImageAvailableListener(…)的线程源代码表明,listener
变量只被赋值,而不是调用调度。因此,setOnImageAvailableListener
不调用listener
,这基本上意味着它不调用onImageAvailable
回调。因此,您不能说对回调的调用源自此方法,因此不能说明调用线程与调用setOnImageAvailableListener
的线程相同。回调将传递给调用Camera.open
的线程,根据前面的说明,该文档是关于旧API的,我现在使用camera2。