打算整理一下对 Android Framework 中多线程相关知识的理解,主要集中在 Framework 层的 Thread, Handler, Looper, MessageQueue, Message, AysncTask,当然不可避免地要涉及到 native 方法,因此也会分析 dalvik...
分类:
移动开发 时间:
2014-07-11 09:00:24
阅读次数:
224
打算整理一下对 Android Framework 中多线程相关知识的理解,主要集中在 Framework 层的 Thread, Handler, Looper, MessageQueue, Message, AysncTask,当然不可避免地要涉及到 native 方法,因此也会分析 dalvik 中和线程以及消息处理相关的代码:如 dalvik 中的 C++ Thread 类以及 MessageQueue 类。本文将从一个使用 Thread 的简单 应用入手,引入 Thread 这个话题,接下来的几篇文...
分类:
移动开发 时间:
2014-07-11 08:34:39
阅读次数:
241
关于多线程的知识,有非常多的资料可以参考。这里稍微总结一下,以求加深记忆。
关于多线程在日常工作中的使用:对于大多数的日常应用系统,比如各种管理系统,可能根本不需要深入了解,仅仅知道Thread/Runnable就够了;如果是需要很多计算任务的系统,比如推荐系统中各种中间数据的计算,对多线程的使用就较为频繁,也需要进行一下稍微深入的研究。...
分类:
编程语言 时间:
2014-07-11 00:55:45
阅读次数:
302
C/S聊天室分为服务器端和客户端,均需要采用多线程来实现。
服务器端主线程需要不断地监听端口,一旦有客户端的请求时,产生相应的Socket,将其加入到队列中并启动子线程,子线程负责接收客户端消息(使用Socket的getInputStream()函数来处理),再将消息发送到所有的客户端(使用Socket的getOutputStream()函数)。
客户端主线程负责获取键盘输入(相当于侦听键盘输...
分类:
其他好文 时间:
2014-07-11 00:29:48
阅读次数:
295
版权声明:以前的Blog文章合并。原创作品,谢绝转载!否则将追究法律责任。
1.重写线程Thread,Runnable运行的是run方法,当调用线程start()时,会运行其run方法,
也可以主动去调用,只不过不在同一个线程里。
当一个线程既继承了Thread又继承Runnable,其thread必须调用target.run()实现对runnable的方法调用。
...
分类:
编程语言 时间:
2014-07-10 22:15:13
阅读次数:
368
java多线程Future和Callable类的解释与使用...
分类:
编程语言 时间:
2014-07-10 21:56:50
阅读次数:
253
LINUX环境下多线程编程肯定会遇到需要条件变量的情况,此时必然要使用pthread_cond_wait()函数。但这个函数的执行过程比较难于理解。
pthread_cond_wait()的工作流程如下(以MAN中的EXAMPLE为例):
Consider two shared variables x and y, protected by the mutex mut,...
分类:
其他好文 时间:
2014-07-10 19:50:36
阅读次数:
347
HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHash.....
分类:
编程语言 时间:
2014-07-10 16:27:05
阅读次数:
248
设计一个类,我们只能生成该类的一个实例。单线程可用,多线程不安全:public class Singleton { private static Singleton instance = null; private Singleton() { } public static ...
分类:
其他好文 时间:
2014-07-10 16:24:37
阅读次数:
145