在《并发容器 part 4 并发队列与Queue简介》节中的类图中可以看到,对于Queue来说,BlockingQueue是主要的线程安全版本。这是一个可阻塞的版本,也就是允许添加/删除元素被阻塞,直到成功为止。BlockingQueue相对于Queue而言增加了两个操作:put/take。下面是一...
分类:
编程语言 时间:
2014-12-02 23:54:50
阅读次数:
296
并发包引入的工具类很多方法都会抛出一定的异常,这些异常描述了任务在线程池中执行时发生的例外情况,而通常这些例外需要应用程序进行捕捉和处理。例如在Future接口中有如下一个API:java.util.concurrent.Future.get(long,TimeUnit)throwsInterrup...
分类:
编程语言 时间:
2014-12-02 23:50:26
阅读次数:
227
这个小节介绍Queue的最后一个工具,也是最强大的一个工具。从名称上就可以看到此工具的特点:双向并发阻塞队列。所谓双向是指可以从队列的头和尾同时操作,并发只是线程安全的实现,阻塞允许在入队出队不满足条件时挂起线程,这里说的队列是指支持FIFO/FILO实现的链表。首先看下LinkedBlocking...
分类:
编程语言 时间:
2014-12-02 23:49:50
阅读次数:
208
本小节介绍锁释放Lock.unlock()。Release/TryReleaseunlock操作实际上就调用了AQS的release操作,释放持有的锁。public final boolean release(int arg) { if (tryRelease(arg)) { Node h = he...
分类:
编程语言 时间:
2014-12-02 23:49:30
阅读次数:
201
1.cout采用endl,cin不用endl1 cin>>a>>b; 2 cout<<a<<b<<endl;2.函数定义后面不要加分号,完了也没有,1 int a(int b)2 {3 //处理语句4 return();5 }3.c++中字符串的输入用char[]并用strcpy(a,".....
分类:
编程语言 时间:
2014-12-02 23:50:25
阅读次数:
208
/**
* spring 配置资源路径时候,classpath:/,classpath:,不带前缀的区别,
* 其实没区别,spring 规定 "classpath:" pseudo-URL,伪url路径,在处理这种路径前缀
* 时候,会把这个伪url去掉。
* @author doctor
*
* @time 2014年12月2日 下午6:28:12
*/
public cla...
分类:
编程语言 时间:
2014-12-02 22:43:35
阅读次数:
243
搜索中的分词器有很多种,包括中文、英文,一般的网站都会有站内搜索功能,也就是对用户输入的内容进行处理,本文对中文的全拼实现了一
个分词器,原理很简单,就是模式匹配。根据中文全拼的特点,即声母和韵母配对,首先列举出所有的声母,再分别列举出所有声母对应的韵母
集,分词的过程就是遍历匹配的过程。具体代码如下:
import java.util.ArrayList;
public cl...
分类:
编程语言 时间:
2014-12-02 22:45:20
阅读次数:
208
控制台五子棋,具体思路见代码注释。
代码如下:
package test;
import java.io.IOException;
import java.util.Scanner;
//控制台简单五子棋
public class GoBang {
//二维数组作为棋盘
private static char[][] board=new char[16][16];
//已下...
分类:
编程语言 时间:
2014-12-02 22:43:40
阅读次数:
217
关于SpringMVC的介绍我就不多说了,网上一搜一大堆,好多大鸟的博客都有详细的描述,之前看的跟开涛学SpringMVC,写的非常好,SpringMVC运行的流程和原理讲的非常的细致在此我引用一下开涛前辈的图片和文字,大家要是想看原文就点击上面的链接。
SpringMVC处理请求的流程图
大家一定要仔细的看,最好是拿张纸,画一画,可比你光看有效果,大家可以与纯MVC模式对比一下,这样...
分类:
编程语言 时间:
2014-12-02 22:41:25
阅读次数:
291
Unity3d 屏幕特效实现类似死亡之后的全屏黑白效果。。。。。...
分类:
编程语言 时间:
2014-12-02 22:41:44
阅读次数:
1077
恶补Java---JavaI/O部分之File类的用法(笔记)
在java中,I/O(输入/输出)是比较乏味的事情,因为看不到明显的运行效果,但输入/输出是所有程序都必需的部分——使用输入机制,允许程序读取外部数据(包括来自磁盘、光盘等存储设备的数据)、用户输入数据;使用输出机制,允许程序记录运行状态,将程序数据输出到磁盘、光盘等存储设备中。
Java的I/O通过java.io包下的类...
分类:
编程语言 时间:
2014-12-02 22:40:40
阅读次数:
210
在这一系列文章中,前面讲到纯粹用mybatis 连接数据库,然后 进行增删改查,以及多表联合查询的的例子,但实际项目中,通常会用 spring 这个沾合剂来管理 datasource 等。充分利用spring 基于接口的编程,以及aop ,ioc 带来的方便。用spring 来管理
mybatis 与管理hibernate 有很多类似的地方。今天的重点就是数据源管理以及 bean的配置。
...
分类:
编程语言 时间:
2014-12-02 22:39:09
阅读次数:
221
通过看jdk源码发现Java字符串中有如下关系:
接口中的方法默认都是抽象的可以写也可以不写。
public interface CharSequence {
int length();
char charAt(int index);
CharSequence subSequence(int start, int end);
...
分类:
编程语言 时间:
2014-12-02 22:38:36
阅读次数:
254
直接声明对象
var dog = {
name: 'Benji',
talk:
function(){
alert('Woof, woof!');
}
};
alert(typeof(dog));
dog.talk();
这样dog对象拥有那么属性和talk函数。
也可以用构造函数
//--------构造函数--------
function Hero...
分类:
编程语言 时间:
2014-12-02 22:37:39
阅读次数:
186
今天aiping点读笔的MP3源文件出现声音大小不一致,而且需要将英文单词MP3与单词翻译MP3文件连接起来,刚开始使用ffmpeg效果很差。万能的gitgub再次证明了它的万能,我找到了pydub。
1 网址:https://github.com/jiaaro/pydub
2 pydub需要依赖 libav或者ffmpeg
3 在mac环境下...
分类:
编程语言 时间:
2014-12-02 22:33:31
阅读次数:
573