对于Java程序如果是new出新的进线程,如果新的线程没有退出,主线程是不会退出的,特别是那些run方法是while(true)的情况下;如果这样的程序放置到了开机启动里面(rc.local)将会导致系统Hold在那里,如果进入到系统中。 但是你看tomcat的startUp.sh就可以实现执行监听 ...
分类:
其他好文 时间:
2016-11-20 06:13:36
阅读次数:
232
一、单线程模型 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处理。所以主线程通常又被叫做UI线程。 在开发Android 应用 ...
分类:
移动开发 时间:
2016-11-19 20:44:52
阅读次数:
203
Android中,相信主线程和子线程之间的通信大家都不陌生了吧。在一次面试经历中被问到了两个子线程之间是如何进行通信的。哎呦!这可蒙住我了。后来回家研究了下,分享给大家。 其实android中线程通信无非就是handler和looper的操作。 一般情况下的主线程和子线程之间的通信,都是通过主线程中 ...
分类:
移动开发 时间:
2016-11-19 13:13:33
阅读次数:
218
当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。 同时,Android会为每个应用程序分配一个单独的LINUX用户。Android会尽量保留一个正在运行进程,只在内存资源出现不足时,Android会尝试停止一些进 ...
分类:
移动开发 时间:
2016-11-18 22:51:05
阅读次数:
408
1. async 仅仅是用了标记 方法中有异步调用(就是有await...) 2 await 用来把「当前线程」中的代码“分成片”,通过一定条件和事件回调的形式 “依次执行”。 3. await并不是「阻塞」主线程,遇到 await ,主线程返回「线程池」 4. 内部用了Task,解决返回值,异常等 ...
分类:
其他好文 时间:
2016-11-18 22:08:43
阅读次数:
161
1. ActivityThread功能 它管理应用进程的主线程的执行(相当于普通Java程序的main入口函数),并根据AMS的要求(通过IApplicationThread接口,AMS为Client、ActivityThread.ApplicationThread为Server)负责调度和执行ac ...
分类:
移动开发 时间:
2016-11-18 21:32:09
阅读次数:
275
Web Workers 为什么用web workers? 浏览器的原理中决定了页面打开只有一个主线程——UI渲染线程,如果线程中有耗时的程序(js)会阻塞线程,使得页面中其他的UI无法渲染,我们一般把js文件放在body结束之前,或者优化算法复杂度。但是根本上解决还是线程的问题。在HTML5中新增了 ...
分类:
Web程序 时间:
2016-11-17 23:25:33
阅读次数:
266
1-GCDblockblock dispatch_async(dispatch_get_main_queue(), ^{ }); 2-NSOperation NSOperationQueue *mainQueue = [NSOperationQueue mainQueue]; NSBlockOper ...
分类:
编程语言 时间:
2016-11-17 01:51:16
阅读次数:
194
1、全局异步执行耗时任务 dispatch_async(dispatch_get_global_queue(0, 0), ^{ }); 2.主线程异步刷新UI dispatch_async(dispatch_get_main_queue(), ^{ }); 3.改变PlaceHolder的颜色 [u ...
分类:
编程语言 时间:
2016-11-17 01:25:01
阅读次数:
181
join线程 在某个线程中调用其他线程的join()方法,就会使当前线程进入阻塞状态,直到被join线程执行完为止。join方法类似于wait, 通常会在主线程中调用别的线程的join方法,这样可以保证在所有的子线程执行结束之后在主线程中完成一些统一的步骤。下面是一个例子, 执行结果,可见当主线程中 ...
分类:
编程语言 时间:
2016-11-16 15:20:55
阅读次数:
221