Event驱动 主体就是一个死循环,没事-休眠,有事-唤醒-执行 runloop:用于解决类似你滑动了屏幕产生了多个事件,为了解耦不影响用户操作,将这些事件加入一个消息队列,这边就不用再去管理这些事件,不会影响操作也不会影响事件的执行,它会从队列中取出一个一个的执行。主线程不需要等待事件处理完成才能 ...
分类:
其他好文 时间:
2016-12-01 14:05:02
阅读次数:
176
一 线程 通过threading模块创建线程有两种方式,如下: 方式1: 方法2: setDaemon方法 主线程不等子线程执行结束就推出 join方法 表示主线程等待子线程执行完毕,join加参数表示最多等几秒 ...
分类:
编程语言 时间:
2016-11-30 02:24:19
阅读次数:
208
一.队列组 1.分别异步执行2个耗时的操作, 等2个异步操作都执行完毕后,再回到主线程执行另一个操作, 用队列组比较好 二、延迟执行 1.第一种 该方法通常是在主线程中调用,会阻碍进程, 产生卡顿。 2. 第二种 GCD 其中my_queue可以是主队列也可以是全局并发队列, 自己可以选 三.使用d ...
分类:
其他好文 时间:
2016-11-27 06:49:26
阅读次数:
167
控制台没有显示任何字符,原因:使用detach开启子线程没有阻塞主线程,主线程已经执行完毕。 结论:detach后,不能再使用join 结论:可以使用joinable()判断是否可以join() ...
分类:
编程语言 时间:
2016-11-26 22:59:43
阅读次数:
162
在iOS里关于UIKit的操作都是放在主线程,因此如果主线程被阻塞住了,你的UI可能无法及时响应事件,给人一种卡顿的感觉。大多数阻塞主线程的情况是在主线程做IO操作,比如文件的读写,包含数据库、图片、json文本或者log日志等,尽量将这些操作放放到子线程,或者在后台建立对应的dispatch qu ...
分类:
其他好文 时间:
2016-11-25 20:26:03
阅读次数:
244
Android的UI更新只能在UI线程中,即主线程。子线程中如果要进行UI更新,都是要通知主线程来进行。 几种实现方式总结如下,欢迎补充。 1、runOnUiThread() 子线程中持有当前Activity引用(假如为Activity mActivity;),即可以调用mActivity的runO ...
分类:
移动开发 时间:
2016-11-23 22:22:58
阅读次数:
276
curl_global_init(3) libcurl 手册 curl_global_init(3) 名称 curl_global_init - libcurl库全局的初始化 概要 #include <curl/curl.h> CURLcode curl_global_init(long flags ...
分类:
Web程序 时间:
2016-11-23 07:29:02
阅读次数:
374
一个帖子的整理: Handler一定要在主线程实例化吗?new Handler()和new Handler(Looper.getMainLooper())的区别如果你不带参数的实例化:Handler handler = new Handler();那么这个会默认用当前线程的looper一般而言,如果 ...
分类:
其他好文 时间:
2016-11-22 13:19:19
阅读次数:
185
必读好文推荐: Unity协程(Coroutine)原理深入剖析 Unity协程(Coroutine)原理深入剖析再续 上面的文章说得太透彻,所以这里就记一下自己的学习笔记了。 首先要说明的是,协程并不是线程,协程是运行在主线程中的,是和主线程同步执行的代码,不同的地方是运行的方法可以被yield ...
分类:
编程语言 时间:
2016-11-21 18:25:41
阅读次数:
294
在Effective Java中看到的,试了一下,有点意思,考查的知识点是volatile关键字。 下面这段代码,预期是打印it takes xxxx miliseconds. 。但实际上,陷入了死循环。 学习过Java内存模型就会知道,这是因为stopRequested这个域,在主线程和backg ...
分类:
其他好文 时间:
2016-11-20 06:24:44
阅读次数:
195