android – 凌空同步请求永远阻止

android – 凌空同步请求永远阻止,第1张

概述我想使用volley库进行同步请求,我使用了以下代码: RequestFuture<Long> future = RequestFuture.newFuture(); AuthenticatedJsonRequest request = new AuthenticatedJsonRequest(Method.GET,ServiceUrl,null,future,future); 我想使用volley库进行同步请求,我使用了以下代码:
RequestFuture<Long> future = RequestFuture.newFuture();        AuthenticatedJsonRequest request = new AuthenticatedJsonRequest(Method.GET,ServiceUrl,null,future,future);        requestQueue.add(request);        try {            Long response = future.get();

但代码在这里永远阻止

Long response = future.get();

这是我的@R_301_6942@JsonRequest

public class AuthenticatedJsonRequest extends JsonRequest<Long> {    public AuthenticatedJsonRequest(int method,String url,String requestbody,Listener<Long> Listener,ErrorListener errorListener) {        super(method,url,requestbody,Listener,errorListener);        // Todo auto-generated constructor stub    }    @OverrIDe    public Map<String,String> getheaders() throws AuthFailureError {        Map<String,String> headers = new HashMap<String,String>();        String creds = String.format("%s:%s",RestClIEnt.Username,RestClIEnt.Password);        String auth = "Basic " + Base64.encodetoString(creds.getBytes(),Base64.DEFAulT);        headers.put("Authorization",auth);        return headers;    }    @OverrIDe    protected Response<Long> parseNetworkResponse(NetworkResponse response) {          try {               String JsonString =                    new String(response.data,httpheaderParser.parseCharset(response.headers));                return Response.success(Long.valueOf(JsonString),httpheaderParser.parseCacheheaders(response));            } catch (UnsupportedEnCodingException e) {                return Response.error(new ParseError(e));            }    }

我调试了凌空代码,它在Networkdispatcher中停止

//从队列中获取请求.

request = mQueue.take();
解决方法 这个问题很老,但是没有任何回应.

我会尝试为其他人写一个响应有同样的问题,我相信这里的问题是你从主线程运行未来,并且默认用户线程这个线程执行响应.

Future在他的代码中等待,如果你从主线程运行它你正在停止这个线程,并且响应处理程序线程永远不会执行它,对于这个问题,这仍然在等待.

总结

以上是内存溢出为你收集整理的android – 凌空同步请求永远阻止全部内容,希望文章能够帮你解决android – 凌空同步请求永远阻止所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1140856.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存