锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要..
分类:
数据库 时间:
2014-08-03 07:56:35
阅读次数:
356
1.3.4 设计并发友好的应用程序
使用传统的命令风格编写多线程应用程序时,我们要面对两个问题:
■很难让现有的顺序代码变成并行的代码,因为要显式使用线程,必须修改大部分的基本代码。
■使用共享状态和锁定是困难的。必须仔细考虑如何使用锁来避免争用条件和死锁,留下足够的空间并行执行。
函数式编程给了我们答案:
■使用声明编式程风格时,可以在现有的代码中引入并行。替换很少几个基元,就能...
分类:
其他好文 时间:
2014-07-23 00:12:17
阅读次数:
229
活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子。该问题要求高效地安排一系列争用某一公共资源的活动。贪心算法提供了一个简单、漂亮的方法使得尽可能多的活动能兼容地使用公共资源 设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演...
分类:
其他好文 时间:
2014-07-18 14:00:43
阅读次数:
262
Heinz Kabutz 在上周举办了一次成功 JCrete 研讨会,我在会上参加了对一种新的 StampedLock (于JSR166中 引入) 进行的评审。StampedLock (邮戳锁) 旨在解决系统中共享资源的争用问题。在一个系统中,如果多个需要读写某一共享状态的程序并发访问这个共享对象时...
分类:
其他好文 时间:
2014-07-16 20:26:09
阅读次数:
138
Oracle性能优化的基本方法概述1)设立合理的性能优化目标。 2)测量并记录当前性能。 3)确定当前Oracle性能瓶颈(Oracle等待什么、哪些SQL语句是该等待事件的成分)。 4)把等待事件记入跟踪文件。 5)确定当前的OS瓶颈。 6)优化所需的成分(应用程序、数据库、I/O、争用、OS等)...
分类:
数据库 时间:
2014-07-13 08:29:14
阅读次数:
404
在实际的软件编程中,经常会遇到资源的争用,比如下面的例子:
[cpp]
view plaincopyprint?
class Counter { private: int value; public: Counter(int c) { value = c; }
int GetAndIncrement()
{ int temp = value;
//进入危险区 valu...
分类:
其他好文 时间:
2014-06-24 23:51:10
阅读次数:
400
地址映象:是将每个虚存单元按某种规则装入实存,即建立多用户虚地址与实存地址之间的对应关系。
地址变换:是程序按照这种映象关系装入实存后,在执行时,多用户虚地址如何变换成对应的实存地址。
页面争用(实页冲突):发生两个以上的虚页想要进入主存中同一个页面位置的现象。...
分类:
其他好文 时间:
2014-06-15 15:57:18
阅读次数:
267
锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的
计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一
个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据...
分类:
数据库 时间:
2014-06-07 11:11:46
阅读次数:
438
建索引时,我们为了建索引快,会加上并行,加上并行之后,此列索引就会是并行了。访问有并行度的索引时,CBO可能可能会考虑并行执行,这可能会引发一些问题,如在服务器资源紧张的时候用并行会引起更加严重的争用。当使用并行后,需要把并行度改回来。
SQL> drop table test purge;
SQL> create table test as select * from dba_objects...
分类:
数据库 时间:
2014-06-03 05:48:26
阅读次数:
375
活动安排问题要求高效地安排一系列争用某一公共资源的活动,贪心算法提供了一个简单的方法,使尽可能多的活动能兼容地使用公共资源。贪心算法并不总能求得问题的整体最优解,但对于活动安排问题,贪心算法却能做到,使得最终所确定的相容活动集合的规模最大,证明不在这里给出。代码如下:
def greedyManage(meeting):
length=len(meeting)
meeting.sort(ke...
分类:
编程语言 时间:
2014-05-21 14:13:42
阅读次数:
232