- 浏览: 52614 次
- 性别:
- 来自: 珠海
最新评论
-
zwllxs:
线程是在栈中分配,大家知道线程大小默认为1m,线程引用的变量或 ...
Java 多线程内存模型 -
learningBird:
写得十分形象。。不过太长了。。看得好累
关于Oracle结构有趣的故事 -
Artjsk:
不错啊,顶一个
Oracle 常见hint用法 -
haohao-xuexi02:
...
假如女人是一种编程语言 -
zhangrun1:
受教了!!
字符集与编码的故事
文章列表
假如女人是一种编程语言
计算机语言的实质其实是为了让人类能够更好与计算机打交道,最终结果都是通过编译成二进制代码或通过解释器转译成二进制代码的形式,由计算机来执行。而二进制就是0和1,假设1代表男人,0代表女人,那么瞬间就可以发现世界就变成了一台大“计算机”。而爱情和情爱也可以看成是1和0组成的二进制机器码。
假如女人是一种编程语言,也许每个男人心中都有自己最喜欢的那一个吧?我认为女人可分两类,“面向过程”和“面向对象”。“面向对象”的女人以寻找终身伴侣为目标,而“面向过程”的,则以经历难以忘怀的爱情时光为己任。各位程序猿当然也要按需选择最适合自己的“编程语言”,不要因为时 ...
有趣的故事
一个名叫Sid的男人,狂热地爱好拍摄、保存和整理照片。Sid的妻子名叫Debbie,他们有三个儿子Logan、Archie和Chuck。他有一所很大的房子,同住的有男管家Simon和女仆Pam。我将介绍他的家庭、他的房子和他的爱好:拍摄、收集和炫耀他的照片。现在,Sid快乐地生活着—家庭、朋友和假期。他不时地拍照。事实上,他总是随身带着相机。他不想错过任何东西。每一个早餐、午餐和晚宴,都会被拍下来。当孩子们从学校回家,镜头摄入他们对父亲的问候。当孩子们做家庭作业的时候,“卡嚓、卡嚓、卡嚓”
常见hint用法
1. /*+ALL_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.例如:SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化.例如:SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';3. /*+CHOOSE*/表明如 ...
Oracle 全局临时表
临时表(Tempotary table)用于保存事务或会话期间的中间结果集。临时表中保存的数据只对当前会话可见,所有会话都看不到其他会话的数据;即使当前会话已经提交了(commit)数据,别的会话也看不到它的数据。对于临时表,不存在多用户并发的问题,因为一个会话不会因为使用一个临时表而阻塞另一个会话。即使我们“锁住”了临时表,也不会妨碍其他会话使用临时表。
临时表比常规表生成的redo少得多。不过由于临时表必须为其中包含的数据生成undo信息,所以也会生成一定的redo。update和delete会生成最多的undo,inser ...
volatile 型变量的特殊规则
关键字 volatile 可以说是Java虚拟机提供的最轻量级的同步机制,但是它并不容易被正确地,完全地理解,以至于许多程序员都习惯不去使用它,遇到需要处理多线程数据竞争的问题时一律使用 synch ...
Java 多线程内存模型
Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的并发效果。在此之前,主流程序怨言(如C/C++等)直接使用物理硬件(或者说操作系统的内存模型),因此,会由于不同的平台上内存模型差异,导致程序在一套平台上并发完成正常,而在另一套平台上并发访问却经常出错,因此经常需要针对不同的平台来编写程序。
Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的 ...
字符集与编码的故事
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为"字节"。 再后来,他们又做了一些 ...
Java 内存分配策略
对象的内存分配,往大方向上讲,就是在堆上分配(但是可能经过JIT编译器后被扯散为标量类型并间接地在栈上分配),对象主要分配在新生代的Eden区上,如果启动了本地线程分配缓冲,将按线程优先在线 ...
Oracle 内存结构
Oracle的3个主要的内存结构:
系统全局区 (System Global Area, SGA):这是一个很大的共享内存段,几乎所有的Oracle进程都要访问这个区 域
进程全局区 (Porcess Global Area, PGA):这是一个进程或线程专有的内存 ...
Oracle数据库中的存储层次体系
数据库由一个或多个表空间构成。表空间(tablespace)是Oracle中的一个逻辑存储容器,位于存储层次体系的顶层,包括一个或多个数据文件。先了解什么是表空间(tablespace),什么是段(segment),什 ...
Oracle 专用服务器和共享服务器连接
Oracle服务器处理请求的两种最常用的方式,这两种方式分别是专用服务器连接和共享服务器连接。
专用服务器:
登录时,Oracle总会为我创建一个新的线程。这通常称为专用服务器配置,因为这个服务器进程会在我的会话生存期中专门为我服务。对于每个会话,都为出现一个新的专用服务器,会话与专用服务器之间的存在一对一的映射。按照定义,这个专用服务器不是实例的一部分。我的客户进程(也就是想要连接数据库的程序)会通过某种网络通道(如TCP/IP套接字)与这个专用服务器直接通信,并由这个服务器进程接收和执行我的 ...
Java 十大事件
1990-1994:Java缘起
Larry Wall说,优秀程序员应有的三个特点:懒惰、急躁和傲慢。Java就是诞生在一群懒惰、急躁而傲慢的程序天才之中。
1990年12月,Sun的工程师Patrick Naughton被当时糟糕的Sun C++工具折磨的快 ...
Java 十大人物
James Gosling : Java之父
作为Java之父,James Gosling的名字可谓是耳熟能详。当人们评论一种编程语言时,总喜欢捎带着把下蛋的母鸡一起带上。Java做为中国的编程语言学习者餐桌上有限的那么几样餐点中的流行款 ...
提高Oracle查询效率
在一个数据库中进行操作的时候,效率是很重要的,那么,如何提高oracle的查询效率呢?笔者将从以下几个方面进行详细解析: 1、选择最有效率的表名顺序(只在基于规则的优化器 ...
数据库与数据库实例的区别
一、 数据库
数据库(database)是一个数据集合.
无论数据库是采用关系结构还是面向对象结构, oracle数据库都将
其数据存放在数据文件中. 在其内部, 数据库结构数据对文件的逻辑
映射, 使不同的数据分开存储, 这些逻辑划分称为表空间.
表空间和文件介绍:
1: 表空间
表空间(tablespace)是数据库的逻辑划分, 每个数据库至少有一个表空间,叫做系统表空间(system 表空间). 一个表空间只能属于一个数据库。
每个表空间由同一个磁盘上的一个或多个文件组成, 这些文件称为数据文件.
表空间的特 ...