参考
张孝详系列
场景
编写一个程序:子线程连说 3 次 “ 你愿意吗?” ,接着主线程连续回答 10次 “我愿意” ,然后子线程再说3次“你愿意吗?”,主
线程回答“我愿意” 10次 。。。 轮流如此往复执行 10次。
分析
“连说 3 次”,“连续回答” 意味着互斥-主线程执行的时候,子线程不能执行;子线程执行的时候,主线程不能执行。
“轮流往复”意味着同步-...
分类:
编程语言 时间:
2016-05-07 09:36:35
阅读次数:
165
1. 定义线程变量和委托方法(供子线程反调主线程使用)
private Thread scanThread;
private delegate void invokeSetScanedData(string data);
private delegate void invokeSetScanedData2(barCodeInfoBean bea...
分类:
其他好文 时间:
2016-05-07 09:28:05
阅读次数:
142
1. android-async-http 简介 主要有以下功能: (1)发送异步http请求,在匿名callback对象中处理response信息; (2)http请求发生在UI(主)线程之外的异步线程中; (3)内部采用线程池来处理并发请求; (4)通过RequestParams类构造GET/P ...
分类:
移动开发 时间:
2016-05-06 20:28:19
阅读次数:
160
线程在Android中是一个很重要的概念,从用途上来说,线程分为主线程和子线程,主线程主要处理的是和界面相关的事情,而子线程则往往用于耗时的操作。由于Android的特性,如果在主线程中执行耗时操作就容易导致程序无法及时响应。除了Thread本身外,Android中可以扮演线程角色的还有很多很多,比如:
AsyncTask,IntentService和HandlerThread。不同形式的线程虽然...
分类:
移动开发 时间:
2016-05-06 14:57:32
阅读次数:
269
1、Service概述
1.1、service简介
Service是一种长生命周期的组件,没有界面,由其他组件开启,运行于当前界面的进程中用于去执行那些不需要和用户交互而且还要求长期运行的任务。当某个应用程序进程被杀掉时,所有依赖于该进程的服务也会停止运行。
Service和其他组件一样,都是运行在主线程中,因此不能用来做耗时的操作。
2、Service的基本用法
2.1、启动和停止服...
分类:
移动开发 时间:
2016-05-06 14:52:44
阅读次数:
235
Android 大部分的系统Services 都运行在 System Server 这个进程里,用一个简单的方法来看看都有哪些重要的Service, “ps -t | grep ”
看看,System_Server进程有多繁重,里面有这么多的线程,图中黄色高亮的是各个service的主服务线程,每个service都会有一个服务主线程和若干个后台线程,实际运行中数量会动态增长,因为应用程序对S...
这个类同样是基于 CallbackMessage, 主要目的是为了在主线程中进行回调,只不过在收到消息的时候进行检测,检测消息发送对象是否已经删除,如果消息发送对象已经没了。消息回调最终调用了调用者的 handleAsyncUpdate, 只是这样的话应当还是存在问题,主线程在处理,后台线程在删除, ...
分类:
其他好文 时间:
2016-05-06 08:12:05
阅读次数:
232
<!--?xml version="1.0" encoding="UTF-8" standalone="no"?--> //创建一个队列 非 主队列 如果 operation 调用 start方法的话 就只会在主线程中执行 NSOperationQueue *queue = [[NSOperatio ...
分类:
编程语言 时间:
2016-05-05 02:03:45
阅读次数:
265
<!--?xml version="1.0" encoding="UTF-8" standalone="no"?--> //回到主线程 为了线程安全 刷新UI 不推荐使用 image 是需要传递的图片 //第一种 YES 参数是等待图片加载完成 再执行后面的方法 [self performSelec ...
分类:
编程语言 时间:
2016-05-05 01:58:57
阅读次数:
191
检查主线程卡顿的方法有两个 1.通过主线程runloop添加observer,观察runloop状态变化,不难发现NSRunLoop调用方法主要就是在kCFRunLoopBeforeSources和kCFRunLoopBeforeWaiting之间,还有kCFRunLoopAfterWaiting之 ...
分类:
编程语言 时间:
2016-05-05 00:14:33
阅读次数:
432