1. 死锁
在多个mutex存在的时候,可能就会产生死锁。
避免死锁的一个最通用的方法是,总是按照相同的顺序来lock the two mutexes, 即总是先于mutex B之前lock mutex A,这样就不会有死锁的可能。有时,这种方法很简单实用,当这些mutexes用于不同的目标。但是,当mutexes用于包含相同类的一个实例时,就不是那么容易了。
例如,如下面程序所...
分类:
编程语言 时间:
2014-08-09 18:47:19
阅读次数:
303
1.为什么用Lock及关键知识当我们使用线程的时候,效率最高的方式当然是异步,即个个线程同时运行,其间互不依赖和等待。当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是说当对同一个资源进行读写的时候,我们要使该资源在同一时刻只能被同一个线程操作,以确保每个操作都是有效即时的,也即保证其操...
分类:
其他好文 时间:
2014-08-09 11:25:37
阅读次数:
225
注明:本文是由本人在开发有关基于lucene资源检索系统时的一点总结,当中一部分是自己依据开发过程自己总结的,也有部分是摘自网络,因无法获取当时摘文的地址,所以在此没有写源地址。转载请声明出处Lucene-3.0.0配置一、Lucene开发环境配置step1.Lucene开发包下载step2.Jav...
分类:
其他好文 时间:
2014-08-08 23:41:07
阅读次数:
368
1,采集网页用的curl 系列函数。 可以模拟登陆,模拟ip,抓取网页,通过抓取的网页来提取数据。 2,flock 文件锁。 ( LOCK_SH取得共享锁定(读取的程序)。 LOCK_EX 取得独占锁定(写入的程序。 LOCK_UN 释放锁定(无论共享或独占) ) 用在模拟进程锁方面的。 3,fso...
分类:
其他好文 时间:
2014-08-08 21:00:06
阅读次数:
314
1/打开终端在Dash里搜索。打开Dash,在里面搜索“gnome-terminal”,就可以找到终端应用序。快捷键Ctrl+Alt+L也可以,不过如果是虚拟机的话可能会有问题。如果想以后快捷打开终端的话,可以在终端运行时的图标选择“Lock to Launcher”。2/下载安装包在终端输入:ge...
分类:
其他好文 时间:
2014-08-08 17:44:56
阅读次数:
293
jar包:lucene-core-2.3.2.jar到相关官网下载//建立线程通用类LuceneUtilimportjava.io.File;importjava.io.IOException;importjava.util.ArrayList;importjava.util.List;importorg.apache.lucene.analysis.Analyzer;importorg.apache.lucene.analysis.standard.StandardAnaly..
分类:
其他好文 时间:
2014-08-08 16:28:26
阅读次数:
256
1、关键类Lucene的搜索过程中涉及的主要类有下面几个:(1)IndexSearcher:运行search()方法的类(2)IndexReader:对索引文件进行读操作,并为IndexSearcher提供搜索接口(3)Query及其子类:查询对象,search()方法的重要參数(4)QueryPa...
分类:
其他好文 时间:
2014-08-08 12:21:45
阅读次数:
215
众所周知innodb的锁是行级锁,这样说也没有问题,只是还可以细分而已。推荐阅读何登成大牛的博客http://hedengcheng.com/?p=771innodb的锁有三种算法,分别如下:Read Lock:单个记录上的锁Gap Lock:间隙锁,锁定一个范围,但不包含记录本身Next-Key ...
分类:
数据库 时间:
2014-08-08 04:18:55
阅读次数:
478
lucene在doc.add(new Field("content",curArt.getContent(),Field.Store.NO,Field.Index.TOKENIZED));Field有两个属性可选:存储和索引。通过存储属性你可以控制是否对这个Field进行存储;通过索引属性你可以控制...
分类:
其他好文 时间:
2014-08-08 01:34:04
阅读次数:
271
JDK5.0之前,用java实现生产者和消费者的唯一方式就是使用synchronized内置锁和wait/notify条件通知机制。JDK5.0之后提供了显示锁Lock和条件队列Condition,与内置锁和内置条件队列相对应,但是显示的锁和条件队列,功能更强大,更灵活。此外JDK5.0之后还提供了大量很有用的并发工具类,如BlockingQueue等,基于这些数据结构,能够方便、快速、高效的构建...
分类:
其他好文 时间:
2014-08-07 23:11:55
阅读次数:
450