阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

老司机
查看: 1092|回复: 0

[转帖] Android 中断线程的处理

[复制链接]
  • TA的每日心情
    开心
    2012-3-7 10:15
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2012-1-4 12:07:54 | 显示全部楼层 |阅读模式
    [代码] [Java]代码btn_register.setOnClickListener(new View.OnClickListener() {  
       
    @Override  
    public void onClick(View v) {  
         // TODO Auto-generated method stub   
         if(doBeforeSubmit()){  
          
      try {  
          Log.v(TAG, "clientThread prepare01。。。:"+Thread.interrupted());  
          clienThread=new Thread(){  
       public void run() {  
           try {  
        Log.v(TAG, "clientThread prepare02。。。:"+Thread.interrupted());  
        while (!Thread.interrupted()) {  
            Log.v(TAG, "clientThread starting。。。");  
            MeApiCall meApiCall=new MeApiCallImpl();  
            Me me=new Me();  
            me.setMeEmail(et_register_account.getText().toString().trim());  
            me.setMePwd(et_register_pwd.getText().toString().trim());  
            me.setMeName(et_register_nickName.getText().toString().trim());                                       
             
            Log.v(TAG, "clientThread data loaded。。。");                                       
            meApiCall.register(me);  
            Log.v(TAG, "clientThread callback。。。");  
          
            handler.sendEmptyMessage(AppConfig.Register.SUCCESS_MSG);  
          
             
           clienThread.interrupt();   //中断线程   
        }  
           } catch (InterruptedException e) {  
        // TODO: handle exception   
        Log.v(TAG, "clientThread is interrupt");  
           }catch (Exception e) {  
        // TODO Auto-generated catch block   
        Log.v(TAG, "exception: "+e.getMessage());  
        handler.sendEmptyMessage(AppConfig.Register.FAIL_OTHER_MSG);  
        e.printStackTrace();  
           }  
       };  
          };  
          Log.v(TAG, "progressDialog prepare01。。。:");  
          progressDialog=ProgressDialog.show(Register.this,   
                 "",   
                 "正在获取....",   
                 true,   
                 true,  
                 new DialogInte**ce.OnCancelListener() {  
             
           @Override  
           public void onCancel(DialogInte**ce dialog) {  
               // TODO Auto-generated method stub   
                
            try {  
                clienThread.interrupt();  
                Log.v(TAG, "interrupt is success!");  
            } catch (Exception e) {  
                // TODO Auto-generated catch block   
                Log.v(TAG, "interrupt is fail!");  
                e.printStackTrace();  
            }  
             
           }  
              }  
                );  
          Log.v(TAG, "clientThread prepareing_end。。。");  
          clienThread.start();  
          //Log.v(TAG, "clientThread prepareing_end。。。");   
      } catch (Exception e) {  
          // TODO Auto-generated catch block   
          Log.v(TAG, e.getMessage()+" 00");  
          e.printStackTrace();  
      }  
       
       
         }  
          
    }  
        });  
    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表