- 博客(9)
- 收藏
- 关注
原创 java的TreeMap
知识点java中的TreeMap和C++中的Map类似,利用红黑树实现,所以插入和查找的时间复杂度都是O(nlogn)。
2017-01-22 09:16:06 557
原创 编程:实现一个高效的缓存系统?
为什么需要缓存系统?学习了这么长时间,我发现不论在哪个体系结构中,缓存系统的作用是为了提高“用户”的访问速度。如何实现1.实现一个缓存系统,但是很低效public synchronized Object getData(String key){ Object result = map.get(key); if(result ==null){ r
2017-01-20 22:19:40 682
原创 java重排序为什么会使程序出错?
回答1.在单线程的环境中是不会出错的 2.在多线程的环境中,举个例子//线程1:context = loadContext(); //语句1inited = true; //语句2//线程2:while(!inited ){ sleep()}doSomethingwithconfig(context);//语句3考虑这个例子,我们的目的是在语句1完成之后执
2017-01-18 17:30:16 317
原创 通过在总线加LOCK#锁的方式有什么缺陷?如何解决?
缺陷某一个cpu访问内存时,内存被锁定,其他cpu无法访问内存,使得效率地下。解决利用缓存一致性协议。所以,什么是缓存一致性协议?
2017-01-18 17:22:18 2788 1
原创 计算机体系结构——为什么需要高速缓存?
答案是这样的,考虑一个程序执行的过程。cpu从内存中读取数据,执行数据,如此不断重复。由于每次读取数据的速度比较慢,但是执行的速度比较快,所以造成了cpu的浪费,那么如何解决这个问题呢?答案就是设立高速缓存(可以看做一块比较小的内存)。想想为什么cpu直接从高速缓存读取数据要比从内存读取速度更快?
2017-01-18 17:02:29 824
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人