在Android开发过程中,常需要更新界面的UI。比如网络请求操作、一些耗时操作都不能放在UI线程中运行的,需要放在子线程,而子线程又不能更新UI界面,这是我们需要引入一个Handler,消息处理机制。更新UI是要主线程(UI线程)来更新的,即UI线程更新。如果在主线线程之外的线程中直接更新页面显示常会报错。抛出异常:android.view.ViewRoot$CalledFromWrongThr...
分类:
移动开发 时间:
2015-02-21 09:44:56
阅读次数:
313
由于一个网友使用笔者写的SocketClient作为游戏客户端网络数据接收类,出现了一些问题
这个问题就是因为当执行onRecv时创建了一个Sprite(Sprite::create(“1.png”)),而创建完成后sprite的数据混乱,或者MoveTo时返回的也是混乱数据。原因在于在多线程申请内存,在主线程使用就会出现问题。为了解决这个问题,特意看了cocos2dx的WebSocket的实现方...
分类:
其他好文 时间:
2015-02-20 11:58:18
阅读次数:
346
GCD的全称为Grand Central Dispatch,翻译为大中央调度,是Apple开发的一个多线程编程解决方法。
进程和线程的概念:
正在进行中的程序被称为进程,负责程序运行的内存分配,每一个进程都有自己独立的虚拟内存空间。
线程是进程中一个独立的执行路径,即主线程,主线程有1M的栈区,对于耗时的执行路径,可以放在子线程(512K栈区)中执行。
Tip:新建线程会消耗内存空...
分类:
移动开发 时间:
2015-02-16 22:15:14
阅读次数:
292
程序:由源代码生成的可执行的程序.进程:一个运行的程序可以看成一个进程,进程拥有独立运行的全部资源.线程:程序中独立运行的代码段.一个进程由一个或多个线程组成,进程只负责资源的调度和分配,线程才是程序真正的执行单元.负责代码的执行.每一个正在运行的程序,至少包涵一个线程,这个线程叫主线程.只有一个主...
分类:
编程语言 时间:
2015-02-16 12:58:19
阅读次数:
202
分析完上面那篇文章,基本理解了handler的实现原理,乘热打铁,这里我们利用handler原理,在子线程中创建一个handler和looper可能很多面试时候问道,子线程中能不能new一个handler ?答案是可以的,但是因为主线程系统默认在ActivityThread中已将帮我们创建好一个lo...
分类:
编程语言 时间:
2015-02-14 12:13:55
阅读次数:
195
1:Android中的进程process
当一个android应用启动,系统会启动一个进程和一个主线程来运行这个应用。
Android系统会尽力保持这个进程的稳定和安全。
但是,在某些特殊情况下,总会移除旧的进程来回收内存,用于新的或者重要的进程。
当要回收内存的时候,系统要决定那些进程应该保留,那些进程应该杀掉。
因此,在android进程管理中,设置了进程的优先级别。优先级别取决于进...
分类:
移动开发 时间:
2015-02-14 11:07:38
阅读次数:
171
本文目录前言一、获取当前线程二、获取主线程三、NSThread的创建四、暂停当前线程五、线程的其他操作六、优缺点回到顶部前言每个iOS应用程序都有个专门用来更新显示UI界面、处理用户触摸事件的主线程,因此不能将其他太耗时的操作放在主线程中执行,不然会造成主线程堵塞(出现卡机现象),带来极坏的用户体验...
分类:
编程语言 时间:
2015-02-13 18:15:36
阅读次数:
227
一:看程序
{CSDN:CODE:604229}
二:现象
程序启动,button1会自动向右滑动三次,但是当点击Button2的时候,button1移动会暂停5秒。
三:线程阻塞:
当一个应用程序启动之后,android系统会为这个应用创建一个主线程。这个线程非常重要,它负责渲染视图,分发事件到响应监听器并执行,对界面进行轮询监听。因...
分类:
移动开发 时间:
2015-02-13 16:41:10
阅读次数:
184
1、基础概念 1)android.os.Handler? 2)主要接受子线程发送的数据, 并用此数据配合主线程更新UI.? 3)应用程序一旦启动,Android UI 这个主线程的生命周期就开始了,然而,Android UI 线程并不是线程安全的,也...
分类:
移动开发 时间:
2015-02-12 16:32:56
阅读次数:
134
IOS 线程处理 子线程的启动与结束技术交流新QQ群:414971585IOS中,如果要在主线程中启动一个子线程,可以又两种方法:[NSThread detachNewThreadSelector:@selector(myThreadMainMethod:) toTarget:self withOb...
分类:
移动开发 时间:
2015-02-12 12:22:22
阅读次数:
146