Java
快乐肥柴
致力于做一只快乐肥柴
展开
-
Java并发(一):并发的多面性与基本的线程机制前缘
Java并发(一):并发的多面性与基本的线程机制一、并发的多面性并发编程令人困惑的一个主要原因是:使用并发时需要解决的问题有多个,而实现并发的方式也有多种,并且在这两者之间没有明显的映射关系(通常只具有模糊的界线)。用并发解决的问题大体上可以分为“速度”和“设计可管理性”两种。更快的执行对于多处理器的机器,为了使程序运行得更快,并发赋予了利用额外处理器运行程序的能力。但是,并发通常是提...原创 2019-05-07 23:15:52 · 220 阅读 · 0 评论 -
Java并发(二):基本线程机制之再续前缘
Java并发(二):基本线程机制之再续前缘此篇笔记为上一篇笔记:Java并发(一):并发的多面性与基本的线程机制前缘中,Java并发的基本线程机制的后续。后台线程所谓后台(daemon)线程,是指在程序运行的时候在后台提供的一种通用服务的线程,并且这种线程并不属于程序中不可或缺的部分。因此,当所有的非后台线程结束时,程序也就终止了,同时会kill掉进程中所有的后台线程。必须在线程启动之...原创 2019-05-08 22:37:31 · 170 阅读 · 0 评论 -
Java并发(三):共享受限资源
Java并发(三):共享受限资源一、Java并发共享受限资源的问题在使用Java并发时,如果两个或者多个线程需要访问共享资源,那么就会出现共享资源竞争的问题,多个线程试图同时访问同一个共享资源。当线程A与线程B都是对共享资源进行写入数据,那么由于线程调度机制的不确定性,在线程A写入一半数据时可能出现线程B调度,并写入数据,这将导致数据错误。二、解决共享资源竞争使用线程时的一个基本问题是...原创 2019-05-09 11:50:01 · 427 阅读 · 0 评论 -
Java并发(四):终结任务
Java并发(四):终结任务一、线程状态与线程进入阻塞的原因线程的休眠sleep()最终将唤醒,而任务也将返回原线程。但是sleep()一种情况是,它使任务从执行状态变为阻塞状态,而有时必须终止被阻塞的任务。线程状态一个线程可以处于以下四种状态之一: 新建(new):当线程被创建时,它只会短暂地处于这种状态,此时它已经分配了必需的系统资源,并执行了初始化。 就绪(Runnable...原创 2019-05-09 15:31:55 · 164 阅读 · 0 评论 -
Java并发(五):线程之间的协作
Java并发(五):线程之间的协作前面的笔记中提到了,当使用线程来同时运行多个任务时,可以通过使用锁(互斥)来同步两个任务,从而使得一个任务不会干涉另一个任务的资源。而当多个线程可以一起工作去解决某个问题时,如果某些部分必须在其它部分之前完成,那么就需要对线程进行协调。关于协调的一种方式join(),在笔记:Java并发(二):基本线程机制之再续前缘中有使用方式的介绍。接下来介绍的是线程之间协...原创 2019-05-09 16:21:37 · 352 阅读 · 0 评论 -
Java并发(六):死锁
Java并发(六):死锁经过前面的笔记,了解到了一个对象可以有synchronized方法或者其他形式的加锁机制来防止别的任务在互斥还没有释放的时候就访问这个对象,并且知道了任务可以变为阻塞状态,那么就有可能出现这种情况:某个任务在等待另一个任务,而后者又在等待别的任务,这样一直下去,直到这个链条上的任务又在等待第一个任务释放锁。任务之间互相等待的连续循环,称为死锁。死锁将会使得程序无法继续运...原创 2019-05-09 16:49:32 · 153 阅读 · 0 评论 -
常用的7种设计模式简单介绍
Android(常用)的7种设计模式简单介绍一、面向对象的六大原则单一职责原则将一组相关性很高的函数、数据封装到一个类中。换句话说,一个类应该有单一的职责。开闭原则一个类应该对于扩展是开放的,但是对于修改是封闭的。里氏替换原则里氏替换原则的定义为:所有引用基类的地方必须能透明地使用其子类对象。本质上就是说,要好好利用继承和多态,以父类的形式声明的变量(或形参),赋值为任何继承于这个...原创 2019-02-14 09:52:20 · 1271 阅读 · 0 评论 -
Java异常层次与异常分类
Java异常层次与异常分类一、Java的异常层次Java的异常层次如下图所示:Java简化的异常层次结构如上,需要注意的是所有类都是从Throwable继承而来,下一层则分为两个结构,Error和Exception。Error类层次描述了Java运行时系统的内部错误和资源耗尽错误,这种错误除了简单的报告给用户,并尽力阻止程序安全终止之外,一般没有别的解决方法。二、Java的异常分类:c...原创 2019-02-26 17:25:32 · 2145 阅读 · 0 评论