自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (4)
  • 收藏
  • 关注

原创 PriorityQueue优先队列实现原理

一、什么是优先队列   优先队列不是按照普通对象先进先出原FIFO则进行数据操作,其中的元素有优先级属性,优先级高的元素先出队。本文提到的PriorityQueue队列,是基于最小堆原理实现。二、什么是最小堆    最小堆是一个完全二叉树,所谓的完全二叉树是一种没有空节点的二叉树。    最小堆的完全二叉树有一个特性是根节点必定是最小节点,子女节点一定大于其父节点。还有一个

2016-11-17 20:02:33 13411 2

原创 newScheduledThreadPool延时任务线程池,实现原理

Excutors的newScheduleThreadPool程序结构,我们在构造ThreadPoolExcute时,Queue队列使用了DelayedWorkQueue,这是一个可延时执行阻塞任务的队列,Delayed元素的一个无界阻塞队列,只有在延迟期满时才能从中提取元素。该队列的头部是延迟期满后保存时间最长的Delayed元素。如果延迟都还没有期满,则队列没有头部,并且poll将返回null。condition的定义Condition available = lock.newCondition();(n

2016-11-09 10:29:29 14016 1

原创 Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?(源码学习)

一、Thread.stopWhy is Thread.stop deprecated?Because it is inherently unsafe. Stopping a thread causes it to unlock all the monitors that it has locked. (The monitors are unlocked as the Threa

2016-11-07 11:19:33 1023

原创 ThreadPoolExcute运行原理(源码学习)

一、ThreadPoolExcute类主要变量shutdownPerm:权限检查使用runState:运行状态,对应有RUNNING 0、SHUTDOWN 1、STOP 2、TERMINATED 3BlockingQueue workQueue :任务队列ReentrantLock mainLock:可重入锁Condition termination=mainL

2016-11-04 18:06:57 1621

原创 Java线程池原理(多线程)

一、JDK四种线程池1、ExecutorService .newSingleThreadExecutor() //创建一个只有单一线程的线程池,全部任务都按顺序执行,源码如下 /** * Creates an Executor that uses a single worker thread operating * off an unbounded queue.

2016-11-03 10:04:32 533

原创 Mysql聚簇索引和非聚簇索引原理(数据库)

一、‘页’和操作系统的关系①为什么要有内存管理?我们知道,一个进程完成他的功能,需要访问磁盘加载数据到内存然后等待进入cpu运算,因为数据量大小远远大于内存大小。因此提出虚拟内存概念。虚拟内存就是将程序用到的数据进行划分,暂时用不到的放到磁盘里,用到的放到内存里,操作系统中总是运行着不止一个进程,各个进程有优先级顺序,所以存在进程调度问题,进程的每次调度都会导致内存和磁盘数据置换,段式内存

2016-11-02 11:29:35 40378 13

原创 java.lang.Number家族(源码学习)

java.lang.Number这个基础类,看似貌不惊人,其实在java数字类型生态系统中很重要。上图看下他的子类家族     基本涵盖了我们常用的几个数字类型的封装类,Byte、Double、Float、Integer、Long、Short,还有Atomic家族,AtomicDouble、AtomicInteger、AtomicLong再看看Number类中的方法public abstract

2016-11-01 10:24:29 2235

原创 TreeMap原理(源码学习)

TreeMap是一种实现了有序的Map类型。TreeMap基于红黑树原理实现。TreeMap是线程不安全的。TreeMap实现了 NavigableMap接口支持导航方法,TreeMap继承自AbstractMap。put方法原理1、判断有没有root节点。没有则创建一个root(节点用new Entry)表示。modCount++2、定义一个父节点pare

2016-10-31 17:57:46 495

原创 Java中的引用(强引用、弱引用、软引用、虚引用)

今天学习了关于java中引用的一个知识点。在博客里记录一下。1、概念解释强引用,就是一般引用,如String a = new String("abc"); String b = a + "bc";在放弃引用钱垃圾回收绝对不回收的。软引用,垃圾回收器发现没有内存空间时就会回收弱引用。弱引用,垃圾回收器每次运行只要发现是弱引用就一定回收。虚引用,虚引用并不会决定对象的生命周

2016-10-31 10:09:23 345

原创 ExtJs 处理复合主键 ID不唯一 数据缺失问题

<br />var rd = new Ext.data.JsonReader( {<br />  totalProperty : 'totalCount',<br />  root: 'recordList',  //从struts2里面传递过来的参数   <br />        successProperty :'success',<br />        id:'chrCid'+'dtmDate1' ,/*注意这里!!!*/<br />  fields: [ <br />  {name : 'ch

2011-05-13 12:44:00 1178

转载 C++中的开放数据库连接技术

 文章来自:回忆青春  摘 要 ODBC(Open DataBase Connectivity,开放数据库连接)提供了一组应用程序调用接口和一套运行支持环境,应用程序可以使用标准的函数进行数据库操作,而不必关心数据源来自于何种数据库管理系统(DBMS),只要有相应的驱动程序即可。本文介绍了ODBC的运行机制,着重讨论了Visual   C++ 1.5

2009-12-26 19:38:00 856

原创 C1083错误!

C1083错误!编译->重建全部! Deleting intermediate files and output files for project Ex050101 - Win32 Debug.--------------------Configuration: Ex050101 - Win32 Debug--------------------Compiling resources..

2009-05-20 07:57:00 1005

转载 printf的格式控制的完整格式

printf的格式控制的完整格式:%  -  0  m.n  l或h  格式字符下面对组成格式说明的各项加以说明:①%:表示格式说明的起始符号,不可缺少。②-:有-表示左对齐输出,如省略表示右对齐输出。③0:有0表示指定空位填0,如省略表示指定空位不填。④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=

2009-05-11 08:59:00 299

转载 rand()和srand()函数

表头文件: #include定义函数 :int rand(void)函数说明 :因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,rand()会返回一随机数值,范围在0至RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。

2009-05-11 00:02:00 936

转载 time_t clock_t

关于time_t,clock_t ,time(),clock(),CLK_TCK, CLOCKS_PER_SEC 的使用2007-03-29 21:28ISO/IEC     9899:1999     标准中有一个宏:     CLOCKS_PER_SEC            tc2     中的     time.h:没有     CLOCKS_PER_SEC,有

2009-05-09 18:43:00 5584 2

转载 转载:C/C++:sizeof和strlen的区别

最近在论坛里总有人问关于sizeof的问题,并且本人对这个问题也一直没有得到很好的解决,索性今天对它来个较为详细的总结,同时结合strlen进行比较,如果能对大家有点点帮助,这是我最大的欣慰了。一、好首先看看sizeof和strlen在MSDN上的定义:首先看一MSDN上如何对sizeof进行定义的: sizeof Operatorsizeof expressionThe si

2009-04-28 09:14:00 514

青岛港电子数据交换协议(合同)

数据交换协议是一份两个公司或者组织之间进行数据交换的一份协议合同模板,在当前大数据时代,各个信息孤岛必须联合起来形成网络综合体发挥各自优势

2016-02-24

Flash报表图(曲线、柱状、饼状).rar

Flash报表图(曲线、柱状、饼状). 内容来自网上,经flash精灵反编译后可生成.fla源码 , 仅供大家学习之用

2011-05-10

计算机网络第五版课后习题答案

计算机网络第五版课后习题答案 答案很全 只是目录安排有点出入 前面的题可能在后面章节才能找到

2010-05-12

数据结构与算法(源c++程序)

《数据结构与算法》 源程序 此书中的程序实现部分全部是c++语言 对于初学c++或者c++学习不深入的朋友有些难度 希望大家一块分享

2009-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除