Java
文章平均质量分 81
Even丶
Java程序狗。
展开
-
Java多线程——同步(二)
在前面的一篇中,总结了如何使用Lock和Condition对象。我们先总结一下有关锁和条件的关键之处:锁用来保护代码片段,任何时刻只能有一个线程执行被保护的代码。锁可以管理试图进入被保护代码段的线程。锁可以拥有一个或多个相关的条件对象。每个条件对象管理那些已经进入被保护的代码段但还不能运行的线程。synchronized关键字 Java中的每一个对象都有一个内部锁;原创 2015-01-29 19:10:15 · 874 阅读 · 1 评论 -
Java多线程——阻塞队列
现在,通过前几篇的总结,我们对Java多线程已经有所了解了,但是都是一些Java并发程序设计基础的底层构建块。对于实际编程来说,我们应该尽可能的远离底层结构。使用那些由并发处理的专业人士实现的较高层次的结构要方便的多,安全的多。阻塞队列 对于许多线程问题。可以通过使用一个或多个队列以优雅且安全的方式将其形式化。生产者线程向队列插入元素,消费者线程则取出他们。使用队列,可以安全原创 2015-02-03 19:33:02 · 1153 阅读 · 0 评论 -
Java对象克隆——浅拷贝与深拷贝
今天收到经理的一封Email,里面是关于对象拷贝的东西,实例代码是C#的,大概看了下,基本还是能看明白!下来觉得还是总结下Java中的对象克隆的知识点以便日后查阅。对象克隆 当我们拷贝一个变量时,原始变量与拷贝变量引用同一个对象,这就是说,改变一个变量所引用的对象将会对另一个变量产生影响。Employee类:/** * @author XzZhao */publ原创 2015-01-19 20:27:42 · 1114 阅读 · 0 评论 -
Java多线程——Thread
今天工作上用到了一些线程方面的知识,有些知识点学了不用一段时间后就会被忘记的,所以下来后觉得还是应该总结一下基础知识,方面以后回顾。什么是线程 大家都很熟悉操作系统中的多任务:在同一刻运行多个程序的能力。 多线程程序在较低的层次上扩展了多任务的概念:一个程序同时执行多个任务。通常,每一个任务称为一个线程,它是线程控制的简称。可以同时运行一个以上线程的程序称原创 2015-01-22 20:16:41 · 910 阅读 · 0 评论 -
Java多线程——同步(一)
可能我们在开发项目进行过程中,通常会冒出这样的困惑:应该选择效 率,还是选择质量?会不会有偷懒的思维,觉得把一些摸不清头绪,不知道怎么写的代码片段去掉,可以节省许多时间,更早的完成项目计划,其实以前我也是这么想的,但最近我开始意识到,这个问题的纠结之处不在于选择困难,而在于问题本身是个伪命题。 什么是“质量”呢?对于我们程序员来说可能是测试通过率,变量命名,代码格式化,组件化原创 2015-01-24 15:06:59 · 871 阅读 · 0 评论 -
Java多线程——Callable与Future
二月份回家过年了,家里没网,所以博客也停了一段时间,上班已经一周了,总的来说还是比较忙吧!周末还是把没总结完的知识点总结一下,方便日后翻阅!Callable与FutureRunnable封装一个异步运行的任务,可以把它想象成一个没有参数和返回值的异步方法。Callable与Runnable类似,但是有返回值。Callable接口是一个参数化的类型,只有一个方法call。public i原创 2015-03-08 13:32:44 · 791 阅读 · 0 评论 -
Java多线程——执行器(Executor)
Markdown编辑器上线啦,终于等到你!执行器 构建一个新的线程是有一定的代价的,因为涉及到和操作系统的交互。如果程序中创建了大量的生命周期很短的线程,应该使用线程池(thread pool)。 另一个使用线程池的理由是减少并发线程的数目。线程数量太多会大大降低性能甚至会使虚拟机崩溃。如果有一个会创建许多线程的算法,应该使用一个线程数“固定的”线程池以限制并发线程的总数。原创 2015-03-08 13:39:32 · 951 阅读 · 0 评论