
Java 多线程
文章平均质量分 77
已改行
溜了溜了
展开
-
Java 线程安全和线程不安全理解
当我们查看JDK API的时候,总会发现一些类说明写着,线程安全或者线程不安全,顿时懵逼。线程安全不安全,主要是在多线程执行的情况下,如果由于线程之间抢占资源而造成程序的bug即为线程不安全,下面就拿arraylist 和Vector来举个例子:这里的arraylist 是线程不安全的,Vector是线程安全的。package Thread;import java.util.L...原创 2018-07-12 21:28:00 · 486 阅读 · 0 评论 -
Java 多线程理解(一)
多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。一.线程的生命周期及五种基本状态关于Java中线程的生命周期,首先看一下下面这张较为经典的图:上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括:Java线程具有五中基本状态新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t =...原创 2018-07-05 16:44:32 · 331 阅读 · 0 评论 -
Java 多线程理解(二)
本文主要总结Java多线程中的线程安全问题。一.一个典型的Java线程安全例子 1 public class ThreadTest { 2 3 public static void main(String[] args) { 4 Account account = new Account("123456", 1000); 5 DrawMone...原创 2018-07-05 16:46:37 · 208 阅读 · 0 评论 -
Java 多线程学习(精选文章)
https://blog.youkuaiyun.com/evankaka/article/details/44153709#t0原创 2018-07-05 17:16:04 · 168 阅读 · 0 评论 -
Java 经典多线程问题(一)生产者消费者问题
生产者消费者问题是研究多线程程序时绕不开的经典问题之一,它描述是有一块缓冲区作为仓库,生产者可以将产品放入仓库,消费者则可以从仓库中取走产品。解决生产者/消费者问题的方法可分为两类:(1)采用某种机制保护生产者和消费者之间的同步;(2)在生产者和消费者之间建立一个管道。第一种方式有较高的效率,并且易于实现,代码的可控制性较好,属于常用的模式。第二种管道缓冲区不易控制,被传输数据对象不易于封装等,实...原创 2018-07-06 19:30:13 · 263 阅读 · 0 评论 -
Java 经典多线程问题(二)死锁问题
一、线程的死锁线程死锁的必要条件:(1) 互斥条件: 资源只能被一个或有限个线程使用。(2) 请求与保持条件: 当进程在申请资源被阻塞时,不释放自己拥有的资源。(3) 不剥夺条件: 进程已拥有的资源不能强行剥夺。(4) 循环等待条件: 若干进程之间形成一种头尾相接的循环等待资源关系。要出现死锁,以上四个必要条件缺一不可。所以,解决死锁问题,就是破坏以上四个条...原创 2018-07-06 20:31:46 · 227 阅读 · 0 评论