相信很多Android开发者很多都遇到过android.os.NetworkOnMainThreadException 这个异常,意思就是主线程进行网络操作异常。这个问题比较简单,但是网络上有着鱼龙混杂的答案,这里想花点时间做一个比较完整的描述。严格模式在早期的Android版本(2.3之前)中,G...
分类:
移动开发 时间:
2015-10-15 12:53:12
阅读次数:
165
Android开发:Handler总结当应用程序启动时,Android首先会开启一个主线程(也就是UI线程),主线程为管理界面中的UI控件,进行事件分发。一、Handler的定义:主要接受子线程发送的数据, 并用此数据配合主线程更新UI。解释:当应用程序启动时,Android首先会开启一个主线程 (...
分类:
其他好文 时间:
2015-10-14 21:21:53
阅读次数:
255
Web Workers 是 HTML5 提供的一个javascript多线程解决方案,我们可以将一些大计算量的代码交由web Worker运行而不冻结用户界面。一:如何使用WorkerWeb Worker的基本原理就是在当前javascript的主线程中,使用Worker类加载一个javascrip...
分类:
Web程序 时间:
2015-10-14 12:31:33
阅读次数:
215
转帖:http://droidyue.com/blog/2014/07/12/check-main-thread-in-android-chinese-edition/如何在Android中判断某个线程是否是主线程?对于这个问题,你可能说根据线程的名字,当然这个可以解决问题,但是这样是最可靠的么?万...
分类:
移动开发 时间:
2015-10-13 19:13:46
阅读次数:
261
此bug发生是因为目前的进程中有更新UI的操作但是没有在主线程中进行所引起的,所以简单的方法是使用gcd切换主线程进行UI更新 //UI更新需要在主线程 dispatch_async(dispatch_get_main_queue(), ^ ...
分类:
其他好文 时间:
2015-10-13 19:01:19
阅读次数:
198
一、主队列介绍主队列是和主线程相关的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中的任务,都会放到主线程中执行。提示:如果把任务放到主队列进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程。获取主队列的方式: dispatch_queue_t queue=dispatch_....
分类:
其他好文 时间:
2015-10-12 17:22:04
阅读次数:
186
在上一个例子中,我们是在LoadImage的onPostExecute中修改的UI,不是说只允许在主线程中修改UI吗?我们看一下源代码是如何操作的。 MainActicity.javapackage cn.lixyz.asynctest;import android.app.Activity...
分类:
移动开发 时间:
2015-10-11 19:27:59
阅读次数:
155
Core Animation是跨平台的,可以用在Mac OS X和iOS平台。过程都是在后台操作的,不会阻塞主线程。不阻塞主线程,可以理解为在执行动画的时候还能点击(按钮)。作用于layer,所在框架是QuartzCoreCABasicAnimation(一个动画对应一个layer的一个属性的的一个...
分类:
其他好文 时间:
2015-10-10 06:44:46
阅读次数:
238
在 Android 中 主线程 与子线程之前的通讯 主要依靠Handler来实现,Handler 简单的用法如下// 在外部声明一个 Handler,实心内部的handleMessage()方法来管理Handler handler = new Handler(){ @Override p...
分类:
其他好文 时间:
2015-10-09 16:54:38
阅读次数:
139
/**
*文件读取是耗时操作,所以要放在线程中进行
*因为子线程无法刷新主线程,所以要创建一个handler
*用来刷新界面
*
*资源读取两种方式:
*1--本地SD卡读取
*2--assets中读取
*
*这里只读取第一列与第二列的数据
*读取SD卡的excel资源可随意找一个,修改一下名字即可
*/
priv..
分类:
其他好文 时间:
2015-10-09 15:36:55
阅读次数:
188