我有一个AsyncTask
永远不会死的。在此事件的侦听AsyncTask
器不断变化(取决于用户可见的活动/片段)。为此,我有如下设置:
- 一个接口:
public interface TaskListener { public void onItemChanged(String itemName) }
- AsyncTask 包含一个
TaskListener
使用公共方法注册/注销的成员变量。
public void registerListener(TaskListener listener) { mListener = listener; } public void unregisterListener() { mListener = null; }
- 在
onPublishProgress()
方法(方法中调用via )中publishProgress()
,我通知了监听器。doInBackground()
AsyncTask
现在,我的问题是在通知听众时对这种情况有什么警告吗?特别是,我想知道它是否是线程安全的。即,如果publishProgress()
同时registerListener()
调用 和 ,正确的侦听器会收到回调吗?