hanlder.post(new Runnable() { public void run() { for(int i=0; i<10; i++){ // 发送msg后不会立即执行handlerMessage方法,由于handler是同步的,所以在run结束后才执行 hanlder.sendEmptyMessage(0); try { Thread.sleep(1000 * 2); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("handler_send_msg"+i); } } });
private Handler hanlder = new Handler(){
@Override public void handleMessage(Message msg) { super.handleMessage(msg); pd.incrementProgressBy(5); Toast.makeText(context, "hello world", -1).show(); System.out.println("handler_send_msg"); } };
console 打印出来的信息是:
由 System.out(22937): 可以看到是同一个线程