java基础
最伤离别
知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得.....
展开
-
java基础-注解一-注解基础
注解,也叫元数据。为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后的某个时刻非常方便的使用这些数据。 每当你创建描述符性质的类或者接口时,一旦其中包含了重复性的工作,那就可以使用注解来简化与自动化该过程。原创 2016-12-22 20:49:21 · 348 阅读 · 0 评论 -
线程同步工具-CountDownLatch
CountDownLatch类:允许一个或者多个线程等待直到一组操作完成。在使用时,CountDownLatch初始化一个等待数,这个数的大小就是指定参与工作的线程数量,当某一个参加工作线程都达到某个程序点时,使用countDown()方法使CountDownLatch内部计数器-1,直到CountDownLatch内部计数器的值为0原创 2017-06-06 11:04:14 · 308 阅读 · 0 评论 -
线程同步工具-Semaphore
Semaphore(信道)是一个控制访问多个资源的“计数器” 当线程要访问某个资源时,他可以获得Semaphore,如果其内部计数器的值大于0,则允许线程访问并将计数器的值-1.如果内部计数器的值等于0,则表示全部的共享资源已经在被使用.Semaphore会让线程进入休眠. 当线程访问完贡献资源以后,会将Semaphore中计数器的值加1,使资源可以对外提供访问。原创 2017-06-06 10:36:26 · 297 阅读 · 0 评论 -
jvm常用工具-jps
JPS-虚拟机进程状况工具 JVM Processs Status Tool,显示指定系统内,所有HotSpot虚拟机进程。原创 2017-06-05 23:38:29 · 510 阅读 · 0 评论 -
线程的生命周期
线程的生命周期是由CPU直接掌控的原创 2017-06-05 22:01:22 · 395 阅读 · 0 评论 -
java实现生产者和消费者问题的几种方式
java实现生产者和消费者问题的几种方式原创 2017-06-05 17:32:15 · 374 阅读 · 0 评论 -
一道面试题的拓展
Integer 爬坑原创 2017-05-05 14:41:48 · 430 阅读 · 0 评论 -
HashMap源码实现
HashMap源码实现原创 2017-04-30 18:49:47 · 319 阅读 · 0 评论 -
JVM线程资源同步及交互机制
java程序采用多线程的方式来支撑大量的并发请求处理,程序在多线程方式 执行的情况下,复杂程度远高于单线程串行执行程序。多线程执行程序最明显的问题是线程之间共同管理的资源的竞争及线程之间的交互。本节主要介绍JVM线程资源同步机制和线程之间的交互机制。线程资源同步机制首先来看一段获取id的程序int i = 0 ; public int getNextInt(){ retu原创 2017-02-14 14:58:01 · 636 阅读 · 0 评论 -
JVM内存管理
java不在需要开发人员显示的分配内存和回收内存,而是由JVM自动管理内存的分配和回收(又称为垃圾回收-GC),这简化了编程难度,但同时可能使得程序员在不知不觉中浪费了很多内存,导致JVM花费很多时间进行垃圾回收。另外还有可能由于不清楚JVM的内存分配和回收机制造成内存泄露。最终导致JVM内存不够用。原创 2017-02-13 21:35:10 · 3763 阅读 · 0 评论 -
java基础-并发-如何捕获线程异常
由于线程本质特性,使得我们不能捕获从线程中逃逸的异常。一旦异常逃出线程的run方法,他就会向外传播到控制台。原创 2016-12-27 20:12:26 · 570 阅读 · 0 评论 -
线程同步工具-CyclicBarrier
CyclicBarrier可以允许一个或者多个线程在一个确定的点同步数据,他的使用上和CountDownLatch类似,但是有趣的是你可以传递一个外加的 Runnable 对象作为初始参数,并且当全部线程都到达同一个点时,CyclicBarrier类 会把这个对象当做线程来执行,这在使用分区处理编程的时候能很好的发挥其并发性能原创 2017-06-06 14:40:37 · 336 阅读 · 0 评论