在JDK5里面,提供了一个Lock接口。该接口通过底层框架的形式为设计更面向对象、可更加细粒度控制线程代码、更灵活控制线程通信提供了基础。实现Lock接口且使用得比较多的是可重入锁(ReentrantLock)以及读写锁(ReentrantReadWriteLock)。 1. ReentrantLo ...
分类:
编程语言 时间:
2016-08-27 23:16:52
阅读次数:
382
Android多线程编程之Handler篇(消息机制)Android的消息机制主要是指Handler的运行机制,Handler的运行需要底层的MessageQueue和Looper的支撑。
Messa...
分类:
移动开发 时间:
2016-08-27 20:48:34
阅读次数:
302
今天我在做短信验证码的时候,需要一个RequestMapping获取验证码,还需要一个RequestMapping验证用户输入验证码和发送验证码是否正确。但是我怎么传递随机验证码和验证的电话号码呢?我一开始采用了私有成员变量,但是我突然觉得这个数据并不安全,假如多人同时请求这个controller, ...
分类:
编程语言 时间:
2016-08-27 20:35:07
阅读次数:
157
一:HashMap >底层存储的是Entry<K,V>[]数组 >Entry<K,V>的结构是一个单向的链表static class Entry<K,V> implements Map.Entry<K,V> { final K key; V value; Entry<K,V> next; int h ...
分类:
编程语言 时间:
2016-08-27 19:28:29
阅读次数:
236
前言: 虽然从学java的第一个程序——helloworld至今,已经有好几个年头了。当时自己找资料,看视频,学习了java的输入输出流,多线程,网络编程等等, 而三大框架(Struts、Hibernate、Spring)基本只是开了个头就出来实习了,尤其对于Spring更是没有进行系统的学习, 虽 ...
分类:
编程语言 时间:
2016-08-27 19:19:09
阅读次数:
203
1. 计算机系统 使用高速缓存来作为内存与处理器之间的缓冲,将运算需要用到的数据复制到缓存中,让计算能快速进行;当运算结束后再从缓存同步回内存之中,这样处理器就无需等待缓慢的内存读写了。 缓存一致性:多处理器系统中,因为共享同一主内存,当多个处理器的运算任务都设计到同一块内存区域时,将可能导致各自的 ...
分类:
编程语言 时间:
2016-08-27 19:18:07
阅读次数:
227
fs2的多线程编程模式不但提供了无阻碍I/O(java nio)能力,更为并行运算提供了良好的编程工具。在进入并行运算讨论前我们先示范一下fs2 pipe2对象里的一些Stream合并功能。我们先设计两个帮助函数(helper)来跟踪运算及模拟运算环境: log是个运算跟踪函数。 randomDel ...
分类:
编程语言 时间:
2016-08-27 15:22:46
阅读次数:
250
摘要 线程池是一种多线程的形式,其中的任务被添加到队列中,并在创建线程时自动启动。 以下示例使用.Net框架的线程池来计算十个数字20和40之间的裴波那契的结果。裴波那契Fibonacci类,它提供了一种方法叫ThreadPoolCallback执行计算。一个对象表示一个裴波那契的值被创建,Thre ...
这个三个函数来自Object类,众所周知它们是用于多线程同步的。然而,有个问题却一直没搞清楚,即notify()函数到底通知谁?《Thinking in JAVA》中有这么一句话,当notify()函数因为某个特定锁被调用时,只有等待这个锁的任务才会被唤醒。什么意思? 看下面的代码,这个代码执行的话 ...
分类:
编程语言 时间:
2016-08-27 12:36:49
阅读次数:
164
一、进程:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,也就是应用程序的执行实例,进程是系统进行资源分配和调度的一个独立单位。每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。 ...
分类:
编程语言 时间:
2016-08-27 11:20:33
阅读次数:
138