Block

publicinterfaceBlock{/****需要执行的任务**@returnObject执行的结果*/voidIBuild();}


GCD

/***GCDofAndroid**@authorfreddon**/publicclassGCD{publicstaticStringdispatch_get_main_queue(){return"main";}/***1x后台运行**@authorfreddon*@paramthreadName*[mainUI线程运行,others/后台运行]*@paramblock*/publicstaticvoiddispatch_async(StringthreadName,finalBlockblock){if("main".equals(threadName)){handler.post(newRunnable(){@Overridepublicvoidrun(){if(block!=null){block.IBuild();}}});}else{Threadt=newThread(newRunnable(){@Overridepublicvoidrun(){if(block!=null){block.IBuild();}}});t.setName(threadName);t.start();}}staticHandlerhandler=newHandler();}


用法

//后台线程GCD.dispatch_async("back",newBlock(){@OverridepublicvoidIBuild(){println(Thread.currentThread().getName());GCD.dispatch_async("main",newBlock(){@OverridepublicvoidIBuild(){println(Thread.currentThread().getName());}});}});//UI线程GCD.dispatch_async("main",newBlock(){@OverridepublicvoidIBuild(){println(Thread.currentThread().getName());}});publicstaticvoidprintln(Strings){Log.i("GCDTester",s);}


更多相关文章

  1. Android 保活后台启动Service 8.0踩坑记录
  2. android异步图片加载三之handler+线程池+消息队列模式
  3. Android进程与线程基本知识一
  4. 有关Android线程的学习
  5. Android单线程模型相关概念详解
  6. Android 多线程-----AsyncTask详解
  7. 浅析Android线程模型
  8. android > 调用拨打电话 并子线程监控然后返回跳转

随机推荐

  1. android学习视频分享
  2. CoderPig’s Android(安卓)Study Note—
  3. Android自动测试之MonkeyRunner之MonkeyI
  4. Android(安卓)Audio简述
  5. Camera服务之--JNI部分
  6. android -- Can't create handler inside
  7. apk 反编译 教程 (不支持混淆,Android)
  8. Android2.3 x86 安装实战
  9. 自定义View--单行上下滚动广告
  10. [android]adb remount失败的解决方法