- 博客(9)
- 资源 (8)
- 收藏
- 关注
转载 设计模式 02 创建类模式之简单工厂模式
工厂模式根据抽象程度的不同分为三种:简单工厂模式(也叫静态工厂模式)、工厂方法模式、以及抽象工厂模式。简单工厂模式,简单说就是有一个类,提供静态方法,可以创建多个对象。interface Human { public void Talk(); public void Walk();} class Boy implements H
2015-07-09 21:14:08 627
原创 08 Java JUC 中的 ThreadPoolExecutor
通过 Executors 工具可以创建普通的线程池以及schedule调度任务的调度池。来看下内部是怎么实现的public static ExecutorService newFixedThreadPool(int nThreads) { return new ThreadPoolExecutor(nThreads, nThreads,
2015-07-01 21:44:06 390
原创 07 Java JUC 中的 Executor 框架 周期性任务调度
ScheduledExecutorService基于ExecutorService,是一个完整的线程池调度。另外在提供线程池的基础上增加了四个调度任务的API。schedule(Runnable command,long delay, TimeUnit unit):在指定的延迟时间一次性启动任务(Runnable),没有返回值。schedule(Callable callable, lon
2015-07-01 21:43:16 513
原创 05 Java JUC 中的 Executor 框架 提交线程
Executors类里面提供了一些静态工厂,生成一些常用的线程池。newSingleThreadExecutor:创建一个单线程的线程池。这个线程池只有一个线程在工作,也就是相当于单线程串行执行所有任务。如果这个唯一的线程因为异常结束,那么会有一个新的线程来替代它。此线程池保证所有任务的执行顺序按照任务的提交顺序执行。newFixedThreadPool:创建固定大小的线程池。每次提交一个
2015-07-01 21:42:09 484
原创 03 Java 并发 线程安全理论基础
线程安全问题线程安全问题可能是非常复杂的。竞态条件当两个线程竞争同一资源时,如果对资源的访问顺序敏感,就称存在竞态条件。导致竞态条件发生的代码区称作临界区。public class Counter { protected long count = 0; public void add(long value){
2015-07-01 21:40:57 387
原创 Linux 学习 01 基本命令
参数以-开始一行输入多条命令,用; 分割命令后面加 & 表示将命令放在后台运行关机[nathan@hadoop ~]$ shutdown -h now[nathan@hadoop ~]$ poweroff[nathan@hadoop ~]$ rebootHELP几乎所有的命令都可以使用-h或 --help获得使用方法
2015-07-01 16:50:35 389
原创 Linux 学习 00 系统启动流程
为了更好的了解Linux系统的运行原理,非常有必要了解系统启动的流程。首先,计算机会加载BIOS,BIOS默认会从硬盘上的第0柱面,第0磁道,第一个扇区中读取被称为MBR(主引导记录)的东西。一个扇区的大小是512字节,存放的内容是一段引导程序和分区信息,其中引导程序占446字节,磁盘分区表DPT占64字节,最后2字节是MBR的结束位。由于Grub本身比较大,常见方式是在MBR
2015-07-01 16:42:26 639
原创 02 Java 并发 JDK1.5之前的多线程
Java 1.5之前的版本,只提供了有限的多线程支持。1.5之前提供的多线程功能实在太过简陋,实际工作中已经很少用到了。本章简单介绍下 JDK 1.5 之前的多线程。定义并启动一个线程应用程序在创建一个线程实例时,必须提供需要在线程中运行的代码。有两种方式去做到这一点:1 提供一个Runnable对象。Runnable对象仅包含一个run()方法,在
2015-07-01 08:36:43 823
Spring MVC 1 资源文件
2013-10-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人