2014-02-06 287 views
1

正如我们所知,asynctask作为后台线程工作,并在任务完成时将控制权返回给gui,并且可以在主活动线程中通过排除请求, 假设我将JSON响应分配给字符串变量在请求完成时,该字符串最初为空,程序会进一步处理该响应,我得到的问题是我在处理响应字符串时抛出了NullPointerException异常,即使在成功响应之后, 也是荒谬的但是如果响应速度慢,程序可能会继续而不初始化字符串变量?变量初始化失败

+2

可能你应该发布一些代码。 – powerj1984

回答

0

这听起来像你没有使用适当的回调你的数据。换句话说,在启动AsyncTask之后,你必须等到它完成,直到你引用可能会影响的全局变量。

因此,如果您没有编写适当的回调方法,那么程序会继续。 AsyncTask背后的想法 - 让它被调用的线程继续进行,同时它做了一个很长的过程。