六十六、同步访问共享的可变数据:在Java中很多时候都是通过synchronized关键字来实现共享对象之间的同步的。事实上,对象同步并不仅限于当多个线程操作同一可变对象时,仍然能够保证该共享对象的状态始终保持一致。与此同时,他还可以保证进入同步方法或者同步代码块的每个线程,都看到由同一个锁保护的之前所有的修改效果。Java的语言规范保证了读写一个变量是原子的,除非这个变量的类型为long或double。换句话说,读取一个非long或double类型的变量
系统 2019-08-29 22:02:40 2453
十三、使类和成员的可访问性最小化:信息隐藏是软件程序设计的基本原则之一,面向对象又为这一设计原则提供了有力的支持和保障。这里我们简要列出几项受益于该原则的优势:1.更好的解除各个模块之间的耦合关系:由于模块间的相互调用是基于接口契约的,每个模块只是负责完成自己内部既定的功能目标和单元测试,一旦今后出现性能优化或需求变更时,我们首先需要做的便是定位需要变动的单个模块或一组模块,然后再针对各个模块提出各自的解决方案,分别予以改动和内部测试。这样便大大降低了因代
系统 2019-08-29 22:02:34 2453
转载http://hxraid.iteye.com/blog/611816红黑树的性质与定义红黑树(red-blacktree)是一棵满足下述性质的二叉查找树:1.每一个结点要么是红色,要么是黑色。2.根结点是黑色的。3.所有叶子结点都是黑色的(实际上都是Null指针,下图用NIL表示)。叶子结点不包含任何关键字信息,所有查询关键字都在非终结点上。4.每个红色结点的两个子节点必须是黑色的。换句话说:从每个叶子到根的所有路径上不能有两个连续的红色结点5.从任
系统 2019-08-29 21:59:28 2453
1.C语言数据类型1.1C语言有32个关键字(1)数据类型关键字(12个):char、double、enum、float、int、long、short、signed、struct、union、unsigned、void;(2)控制语句关键字(12个):break、case、continue、default、do、else、for、goto、if、return、switch、while;(3)存储类型关键字(4个):auto、extern、register、
系统 2019-08-29 21:59:25 2453
ProfilingLab:UnderstandingProgramPerformanceInthisexercise,youwillmodifyanexistingprogramtomakeitrunfaster.Theprogramisnotwrittenforspeed.Youwillfindmanythingstooptimize,butyoushouldconcentrateonoptimizationsthatwillmakeasignifica
系统 2019-08-29 21:57:58 2453
最近做的Ext项目Ext的插件都比较大,对于网页的浏览速度也是非常不容乐观的,于是就需要对所加载的js文件进行优化,其中一个方法就是对于较大的js文件可以进行压缩。压缩成gzjs格式,但是gzjs后缀名的文件又不能被浏览器所认识,得需要对服务器端做些处理。一、将js格式文件压缩成gzjs格式。使用gzip.exe打包压缩后的JS文件,最后生成xx.js.gz,把xx.js.gz文件改成xx.gzjs。压缩实例:ext-all.js(610KB),gzip.
系统 2019-08-12 09:30:24 2453
最近想研究一下搜索引擎,看资料前,前几晚趟在床上初步琢磨了一下;其实自己以前也有些零星的想法,先把自己的初步方案记录下来。再和Lucence等对比一下,检验一下自己的想法。主要是搜索引擎的基本架构和数据模型。1.基本架构按照使用这么多年Yahoo,Baidu的经验,SearchEngine要做的事儿就是:输入几个关键字,查询出很多的网址列表。列表一般按匹配度,网址的跳转频率等排序,也要简单列出该网页的前几十个字作为摘要。所以查询模块是最外层的,也是第一个模
系统 2019-08-12 09:30:17 2453
SeleniumWebDriver测试弹出窗口,包括识别弹出窗口,将driver转到新的窗口,在新的串钩中执行而是步骤,然后再转换到最初的窗口。通过名称(name)识别和处理:SeleniumWebDriver允许我们通过name属性或窗口的句柄来识别窗口,然后通过WebDriver.switchTo().window()方法在不同的窗口之间进行切换。windowname属性的定义name属性可设置或得到窗口的名称,其值为字符串。语法如下:1window.
系统 2019-08-12 09:27:14 2453
第一次接触Github,这次注册最大的难处就是全英文,着实看不懂。仅凭着认识的几个常用词去了解个具体内容实在是太困难了。所以第一个体会就是要好好学英语背单词,不想看到满屏的英文就感觉头疼,烦躁。第二个体会就是编程,又用到之前学的java写程序,之前基础就打得不好,现在在上手就编写程序那是绝对不可能的只能翻出沉睡已久的课本看了。所以还是要复习一下以前学的专业课,在此基础上好好努力,加强自己的编程能力,自己差的实在是太远了。Github的建立及心得体会
系统 2019-08-12 09:27:01 2453
--=========================--RMAN概述及其体系结构--=========================一、RecoveryManager(RMAN)特性是一种用于集备份(backup)、还原(restore)和恢复(recover)数据库于一体的Oracle工具,支持命令行及图形界面操作能够备份整个数据库、表空间、数据文件、控制文件、归档文件以及Spfile参数文件。支持增量数据块级别的备份和块级别的介质恢复可以保存频繁执
系统 2019-08-12 01:55:06 2453